python學(xué)習(xí)筆記第一節(jié)-打印和變量賦值


Python學(xué)習(xí)心法

1狮辽、語法不是重點(diǎn)

2淳衙、算法不是重點(diǎn)

3、數(shù)據(jù)結(jié)構(gòu)及其轉(zhuǎn)化是大多數(shù)算法的核心宠能,是應(yīng)該花大力氣學(xué)習(xí)的知識亚隙。

4 、Python知識的二八原則

?????20%的知識比較難 80%的知識淺顯易懂违崇;

?????80%的知識在編程中用不到 阿弃,常用的20%左右。

5羞延、在ai時代渣淳,有許多代碼輔助工具可以在學(xué)習(xí)和工作中使用運(yùn)。比如codex(https://beta.openai.com? 基于GTP-3和GPT-C肴楷,2022年五月codex內(nèi)測結(jié)束水由,開始收費(fèi)。), alphacode,? Copilot? tabnine 等等赛蔫。知識的細(xì)節(jié)和語法熟練度等方面越來越不重要砂客。所以學(xué)習(xí)的專注點(diǎn)不要放在語法和編程基本功上,也沒必要花太多時間刷很多算法題呵恢,應(yīng)該專注于問題本身鞠值、專注于問題所在領(lǐng)域的技術(shù)動向。在入門過程中我們很難寫出高質(zhì)量渗钉、有意義的代碼彤恶,當(dāng)你在語法和句法方面遇到的困難時,試著跳過那些微不足道的問題鳄橘,試著用注釋先備注這里遇到的問題声离,先讓程序的骨架搭建起來,再回頭處理細(xì)節(jié)問題瘫怜。

???????關(guān)于幾個代碼輔助工具的文章https://posts.careerengine.us/p/60dc0202fe56051682946b57

6术徊、專注于數(shù)據(jù)流

7、當(dāng)你對代碼的表達(dá)沒有足夠經(jīng)驗(yàn)時鲸湃,讀10個別人寫的優(yōu)秀的程序赠涮、不如一次將自己的簡單 ? ? 想法用代碼實(shí)現(xiàn)子寓。試著將自己的編程思想表達(dá)出來,每一次完整的編程實(shí)踐都意味著能力的拔高笋除。

8斜友、如果你關(guān)心的領(lǐng)域沒有充足的庫和算法有兩個可能 ,你檢索的范圍和檢索的方法有問題垃它,? 這部分知識被隱藏了起來鲜屏。試著投入精力解決你要解決的問題,這是我們學(xué)習(xí)編程的最終目的

9嗤瞎、學(xué)編程語言和學(xué)自然語言有很大部分是原理相通的墙歪,詞匯量、 表達(dá)習(xí)慣 贝奇,表達(dá)能力虹菲,思考能力、閱讀能力掉瞳,創(chuàng)新能力都可能幫助我們突破阻礙毕源,也都有可能成為障礙。

?10陕习、 當(dāng)我們學(xué)習(xí)編程時霎褐,我們是在學(xué)習(xí)一種思考方法,思考工具该镣,我們在提高思想的維度冻璃。

編程作為一種語言或許也是有維度的,不同維度的編程用來解決不同維度的問題损合,從我們運(yùn)用計算器處理簡單的數(shù)學(xué)計算開始省艳,或許就注定了計算機(jī)編程的宏大敘事;我們創(chuàng)造數(shù)據(jù)模型模擬世界嫁审,模擬我們身邊的事物跋炕,編程和算法的核心目標(biāo)是將問題數(shù)據(jù)化可計算化。

??????什么樣的事物是可以計算的呢律适?這個問題的答案一直在被改寫辐烂。


???????What is? program? What is python?

??????編程是符號的學(xué)問捂贿,它既包含數(shù)學(xué)纠修、哲學(xué)、語言學(xué),與我們以往的知識大有不同, 數(shù)學(xué)用函數(shù)和模型來描述事物厂僧,而編程即延襲了這些方法和思想分瘾、又開創(chuàng)性的提出了很多運(yùn)算的概念, 神經(jīng)網(wǎng)絡(luò)、機(jī)器學(xué)習(xí)這樣的算法既是數(shù)學(xué)又突破了數(shù)學(xué) ,不要急著回答諸如What is program這樣的問題 ,也不要急著去回答編程能干什么這樣的問題,計算科學(xué)才剛剛起步就改變了世界, 編程是智慧的飛躍 ,更是是智慧的進(jìn)化,是新時代的生產(chǎn)工具德召、思考工具。

???????豐富的代碼組合可以解決許多問題,怎么用編程來解決你的問題才是問題的核心,你要首先了解你的問題,其次你要了解編程.?

????????一直以來自然語言和文字被用作交流汽纤、思考上岗、創(chuàng)造和傳承的工具, 自從有了計算機(jī)科學(xué)、我們的一切都被改變了,而且這種改變的速度在逐步的加快 ,編程語言不只是一門技術(shù)蕴坪,而是將來人們必須掌握的生存技能 .

????????人們因使用而學(xué)習(xí)肴掷。而使用是最好的學(xué)習(xí)方法。學(xué)習(xí)Python可以有很多的動機(jī)背传,因?yàn)镻ython可以完成太多的工作,初學(xué)者應(yīng)該帶著怎樣的目標(biāo)來學(xué)習(xí)呢?

????????太多的概念太多的應(yīng)用和場景都在使用Python呆瞻,這讓初學(xué)者很容易迷失方向,但如果你帶著目標(biāo)來學(xué)習(xí)將起到事半功倍的效果.

????????為什么要專注于目標(biāo)?當(dāng)我們專注于目標(biāo)來學(xué)習(xí)Python時我們可以忽略掉目標(biāo)無關(guān)的知識忽略掉學(xué)習(xí)上的選擇困難,.

???????編程已經(jīng)擴(kuò)展到生活和生產(chǎn)的方方面面:網(wǎng)絡(luò),娛樂,藝術(shù)径玖,社交App, ai教育,小程序,ERP,財務(wù),設(shè)計,游戲,物聯(lián)網(wǎng),工控,自動化,,智能家居,智能交通,智能穿戴,服務(wù)機(jī)器人痴脾,機(jī)器視覺,語音識別梳星,翻譯赞赖,tts語音轉(zhuǎn)換,聲紋技術(shù)冤灾,生物傳感器前域,腦機(jī)接口,鑲?cè)胧皆O(shè)備,爬蟲,云,人工智能,大數(shù)據(jù),區(qū)塊鏈,數(shù)字貨幣,科學(xué)計算, 這些或成熟或稚嫩的應(yīng)用場景, 都在被硬軟件技術(shù)改造著韵吨。未來越來越數(shù)字化匿垄,越來越虛擬化。

?????如果你清楚的知道你要用Python去做什么事归粉,那么學(xué)習(xí)就變得簡單了,Python可以做很多事情椿疗。 你需要掌握一門編程語言,python 是不錯的入門語言盏浇。.

????????Python本身并不有趣变丧,但那些人們正在用python所作的事情太有趣了。

python 知識體系如下表:


入門第1課

print語句

1, print語句是一個Python內(nèi)置函數(shù),作用是將括號中的東西顯示出來,這個函數(shù)可以顯示幾乎所有的數(shù)據(jù),數(shù)字绢掰,字符串痒蓬,變量,表達(dá)式滴劲。

暫停思考:什么是數(shù)據(jù)攻晒?什么是數(shù)據(jù)結(jié)構(gòu)?什么是數(shù)據(jù)類型班挖?可計算的東西都可以是數(shù)據(jù)鲁捏,數(shù)據(jù)可以是簡單結(jié)構(gòu),沒有結(jié)構(gòu)萧芙,也可能結(jié)構(gòu)復(fù)雜:比如課表给梅、棋類棋譜假丧、圖片、視頻音頻动羽、波形包帚、樂譜、思維導(dǎo)圖等等.

數(shù)據(jù)類型:我們將需要計算的東西規(guī)范化統(tǒng)一化以便計算機(jī)能夠存儲計算运吓。如:int, 布爾,列表渴邦、字典,就是我們設(shè)計的數(shù)據(jù)類型拘哨。用type()函數(shù)可以查詢數(shù)據(jù)的類型谋梭。

????print語句可以打印很多東西

print(‘money’)

pyint(‘money’*100)

a = range(10)

print(a)

注意:print 既然是一個函數(shù),函數(shù)后面的括號自然少不了

x = 558

y = 557

print(x+y)

print 打印布爾表達(dá)式

a = 2

b = 3

print(a>b)? ? #a>b是一個布爾表達(dá)式倦青,這里的結(jié)果是假False

#是一個注釋符號,是代碼的解釋瓮床,#后面的語句不執(zhí)行,只是幫助代碼的閱讀

三個單引號和三個雙引號常用來注釋一段代碼姨夹,二者效果一樣纤垂。

單引號注釋代碼塊

‘’’

dshskjhkj

jjkjkkjklk

‘’’

雙引號注釋代碼塊

”“

hjhkj

kljklj?

klkjkljk

”“

在調(diào)試代碼是也會經(jīng)常使用ctrl + /? 快捷鍵來注釋掉整塊代碼,再次按ctrl + /? 可以取消注釋

特別要注意:在錄入代碼時,務(wù)必將電腦輸入法切換到英文輸入模式,Python不認(rèn)識中文標(biāo)點(diǎn)符號

注意:print函數(shù)默認(rèn)是換行的如果不換行可以在輸出內(nèi)容后加end=' ’用逗號隔開磷账。

????????????????end=‘\n ‘是默認(rèn)參數(shù)峭沦,默認(rèn)情況換行。

????????????????print ()函數(shù)還有很多參數(shù)逃糟,在深入學(xué)習(xí)中會遇到

a = 2

b = 3

print(a>b)

print(a*b)

print(a-b,end='? ')

print(a+b,end='? ')

print(a,a,b,b,)

print('結(jié)束打印')

輸出

False

6

-1? 5? 2 2 3 3

結(jié)束打印

這里的end=’‘之間加了一個空格

???實(shí)際上我們可以把end 參數(shù)換成很多樣式吼鱼,以達(dá)到輸出效果,我估計它的性質(zhì)和關(guān)鍵字參數(shù)類似绰咽,有興趣可以作些實(shí)驗(yàn)

a = 2

b = 3

print(a>b,end='___\n')

print(a*b,end='7,6,8,7,6,\n')

print(a-b,end='&&\n')

print(a+b,end='1,2,3\n')

print(a,a,b,b)

print(end=' *************? ? ****** ? ? *****? ? *****\n')

print('結(jié)束打印')

輸出

False___

67,6,8,7,6,

-1&&

51,2,3

2 2 3 3

?*************? ? ****** ? ? *****? ? *****

結(jié)束打印

注意”print函數(shù)的兩種格式化輸出%和format菇肃。也不是多難,初學(xué)者了解便好取募。

先來了解下%后面接不同字母代表的轉(zhuǎn)換意義琐谤,%s 表示轉(zhuǎn)換成字符,%o轉(zhuǎn)換成8進(jìn)制

%d轉(zhuǎn)換成10進(jìn)制玩敏,%x轉(zhuǎn)換成16進(jìn)制斗忌,%o轉(zhuǎn)換成8進(jìn)制,%接f旺聚,e织阳,g表示保留不同的有效位,以及小數(shù)點(diǎn)后位數(shù)砰粹。%%文字唧躲,%i 轉(zhuǎn)換成整數(shù)

例:a = 88,print('a 的大小為:%s'% a) 輸出:a 的大小為:88

%S也被解釋為占位符,先在輸出內(nèi)容中展占位弄痹,最后補(bǔ)充說明該位置應(yīng)該替換的數(shù)據(jù)

a = 88

b = 99

print('a 的大小為:%s,b 的大小為%s饭入,兩者相差%s'% (a,b,b-a))

輸出:a 的大小為:88,b 的大小為99,兩者相差11

? format 和%差不多

zidian = {'name':'張三','age':'40','tixing':'球型'}

print('大肥豬{name},今年{age}歲,體型已經(jīng)變成{tixing}了'.format(**zidian))

輸出:大肥豬張三,今年40歲,體型已經(jīng)變成球型了

? ? print()函數(shù)還有一個重要的參數(shù)sep=肛真,用來設(shè)置分隔符

a = '你好:'

b = '先生'

c = '王'

d = '李'

e = '趙'

f = '小姐'

print(a,c,b,sep='? ? |? ? ? ',end='? -------- ? ---- ? ? ? --\n')

print(a,d,b,sep='? ? |? ? ? ',end='? -------- ? ---- ? ? ? --\n')

print(a,e,f,sep='? ? |? ? ? ',end='? -------- ? ---- ? ? ? --\n')

輸出

你好:? ? |? ? ? 王? ? |? ? ? 先生? -------- ? ---- ? ? ? --

你好:? ? |? ? ? 李? ? |? ? ? 先生? -------- ? ---- ? ? ? --

你好:? ? |? ? ? 趙? ? |? ? ? 小姐? -------- ? ---- ? ? ? --

入門第2課? 變量及變量賦值

????計算機(jī)可以存儲數(shù)據(jù)圣拄,這是馮諾依曼結(jié)構(gòu)的特點(diǎn),我們不用知道數(shù)據(jù)存在硬盤的和內(nèi)存的什么地方,Python編程要做的,只是給這塊存儲空間起一個名字毁欣。

Python變量命名只有簡單的幾條規(guī)則:


???????1、變量名[空間的名字]由字母和數(shù)字以及下劃線組成岳掐。

???????2凭疮、但不能以數(shù)字開頭

???????3、下劃線是可以開頭的串述,但這種情況是極特殊:__init__,__main___,__item__

???????4执解、有一些字母組合是保留關(guān)鍵字,而這些保留關(guān)鍵字是python執(zhí)行器判斷程序結(jié)構(gòu)的依據(jù)纲酗,在變量命名時不能使用衰腌。

>>> import keyword? ? #導(dǎo)入keywork外置模塊

>>> keyword.kwlist ? ? #用kwlist方法打印python保留關(guān)鍵字

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

注意:以上四條不僅是變量名命名的規(guī)則,同時也是函數(shù)和類的命名規(guī)則.

變量賦值

Python賦值語句的設(shè)計十分自由簡潔:例如

a = ’你好世界‘

不需要提前申明變量,約束變量的類型觅赊,在賦值的一瞬間完成了許多工作右蕊。

第1句a = ’你好世界‘就是一條賦值語句,變量a被賦值為’你好世界’,前邊不需要加上數(shù)據(jù)類型,Python根據(jù)后面的內(nèi)容自動判斷數(shù)據(jù)類型

??????變量的賦值也意味著被分配存儲空間 (實(shí)際上只是指向)

???(擴(kuò)展知識:Python的內(nèi)存分配機(jī)制有共用、駐留吮螺、銷毀等機(jī)制,可以用is方法判斷兩個變量是不是被分配到了同一空間,可以用==判斷兩個變量中存儲的值是否相等,可以用id()的方法查詢變量存儲的內(nèi)存位置,(地址)饶囚。變量被賦值后,可以的隨時隨地給他賦另外一個類型的值.

??????一個變量被賦值后編程者要清楚的掌控此時這個變量的類型,這點(diǎn)很重要。因?yàn)椴煌愋偷臄?shù)據(jù)有不同的計算特性和方法特性鸠补。

??????變量對應(yīng)著存儲空間,你可以先給變量賦予一個字符,然后過一陣子再用它來存儲其他的東西,這是可以的萝风。變量的類型type,由它存儲的數(shù)據(jù)決定。

a = 'hj'

print(a)

print(type(a))? ? ? #打印變量a的數(shù)據(jù)類型

a = 1

print(a)

print(type(a))? ? ? #再次打印變量a的類型

輸出

hj

<class 'str'>

1

<class 'int'> ? ? ? #因?yàn)樽兞縜被重新賦值紫岩,所以它的類型變了

??????不要糾結(jié)變量的名字规惰,關(guān)注變量中的值才是重點(diǎn),簡單的一對一變量賦值一般不會出錯,容易出錯的地方是,我們在用變量接收函數(shù)返回值時泉蝌、容易把數(shù)量搞錯,這時需要注意,函數(shù)有幾個輸出就用幾個變量來接收,數(shù)量上要匹配否則會報錯.?

??????很多時候我們的賦值語句不是給變量一個給定的值而是一個表達(dá)式 ,甚至是一個隨著程序運(yùn)行而不斷變化的一個表達(dá)式 ,這里我們舉幾個相對簡單的例子:

a = 1

b = 2

c = a*b+a/b

print(c)

輸出:2.5

為了追求語句簡潔,Python還可以批量賦值

a, b, c, d = 1歇万,3,5梨与,9 ? ? #賦值符號=兩邊個數(shù)匹配就行堕花,這里同時給四個變量賦四個值

print(a, b, c, d)

輸出

1? 3? 5? 9


???賦值語句還往往將函數(shù)的返回值賦給變量

def just(lst=[1,2,3,4]):

????a, b, c, d = lst[0], lst[1], lst[2], lst[3]

????return a,b,c,d

e,f,g,h = just(lst=[5,6,7,8])

print(e,f,g,h)

輸出

>>> 5 6 7 8

????????函數(shù)的相關(guān)知識將在后邊學(xué)習(xí),這里只需了解有這樣的賦值形式

?locals()函數(shù)粥鞋,動態(tài)變量(難點(diǎn)初學(xué)者可忽略):

如果變量名比較多而這些變量名又是有一定規(guī)律時可以使用動態(tài)賦值?


names =? locals()? ? ? ? ? ? ? ? ? ? ? ? ? #告訴編譯器我要定一個動態(tài)變量names

for i in range(5):

??????names[‘n’+str(i)]=i? ? ? ? ? ? ? ? ? ? #動態(tài)生成變量名

print(n0 n1 n2 n3 n4) ? ? ? ? ? ? ? #n0 n1 n2 n3 n4是動態(tài)生成的變量

輸出

?01234

???在閱讀代碼時缘挽,了解賦值符號兩邊東西是理解代碼的關(guān)鍵。賦值語句是最簡單的python知識,但賦值語句又最基礎(chǔ)最普遍最重要的語句壕曼,有時=右邊的結(jié)構(gòu)比較復(fù)雜苏研,要細(xì)心分析表達(dá)式的最終結(jié)果,隨著學(xué)習(xí)的深入腮郊,你會發(fā)現(xiàn)摹蘑,所有的數(shù)據(jù)類型都可以賦值給變量,除此之外圖片轧飞,視頻衅鹿,聲音,文件过咬,設(shè)備大渤,網(wǎng)絡(luò)端口等等太多的事物都可以用賦值語句賦值給變量,你會越來越了解掸绞,變量的意義泵三,賦值的意義,數(shù)據(jù)的意義衔掸,計算的意義烫幕。

???????總結(jié):這里我們大概了解了python的知識體系,了解了print函數(shù)敞映,了解了變量的命名規(guī)則较曼,以及變量的賦值,我們可以嘗試給變量賦不同的值并打印出來驱显。

???????如何作實(shí)驗(yàn):下一節(jié)我們將介紹python的編程平臺pycharm诗芜,在此之前可以使用菜鳥工具的python在線工具https://c.runoob.com/compile/9/ 對本節(jié)類容進(jìn)行練習(xí),手機(jī)瀏覽器也是可以的埃疫。代碼寫點(diǎn)擊運(yùn)行就可以在下免得輸出框看到結(jié)果伏恐。下一節(jié)進(jìn)行數(shù)據(jù)類型的學(xué)習(xí)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末栓霜,一起剝皮案震驚了整個濱河市翠桦,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌胳蛮,老刑警劉巖销凑,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異仅炊,居然都是意外死亡斗幼,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門抚垄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蜕窿,“玉大人谋逻,你說我怎么就攤上這事⊥┚” “怎么了毁兆?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長阴挣。 經(jīng)常有香客問我气堕,道長,這世上最難降的妖魔是什么畔咧? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任茎芭,我火速辦了婚禮,結(jié)果婚禮上誓沸,老公的妹妹穿的比我還像新娘骗爆。我一直安慰自己,他們只是感情好蔽介,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著煮寡,像睡著了一般虹蓄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上幸撕,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天薇组,我揣著相機(jī)與錄音,去河邊找鬼坐儿。 笑死律胀,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的貌矿。 我是一名探鬼主播炭菌,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼逛漫!你這毒婦竟也來了黑低?” 一聲冷哼從身側(cè)響起锌妻,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤寄摆,失蹤者是張志新(化名)和其女友劉穎催式,沒想到半個月后翠订,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體摩骨,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡驳规,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年惑折,在試婚紗的時候發(fā)現(xiàn)自己被綠了术裸。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片旭蠕。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡停团,死狀恐怖旷坦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情客蹋,我是刑警寧澤塞蹭,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站讶坯,受9級特大地震影響番电,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜辆琅,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一漱办、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧婉烟,春花似錦娩井、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至昙衅,卻和暖如春扬霜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背而涉。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工著瓶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人啼县。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓材原,卻偏偏與公主長得像,于是被迫代替她去往敵國和親季眷。 傳聞我的和親對象是個殘疾皇子余蟹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容