Python菜鸟之python入门
python入門知識(shí)
1:python的產(chǎn)生與簡(jiǎn)介
Python是著名的“龜叔”Guido van Rossum在1989年圣誕節(jié)期間,為了打發(fā)無聊的圣誕節(jié)而編寫的一個(gè)編程語言。龜叔給Python的定位是“優(yōu)雅”、“明確”、“簡(jiǎn)單”,所以Python程序看上去總是簡(jiǎn)單易懂。
Python 是一款易于學(xué)習(xí)且功能強(qiáng)大的編程語言。 它具有高效率的數(shù)據(jù)結(jié)構(gòu),能夠簡(jiǎn)單又有效地實(shí)現(xiàn)面向?qū)ο缶幊獭ython 簡(jiǎn)潔的語法與動(dòng)態(tài)輸入之特性,加之其解釋性語言的本質(zhì),使得它成為一種在多種領(lǐng)域與絕大多數(shù)平臺(tái)都能進(jìn)行腳本編寫與應(yīng)用快速開發(fā)工作的理想語言。
通過 Python 來運(yùn)行的你的程序有兩種方法——使用交互式解釋器提示符或直接運(yùn)行一個(gè)源代碼文件
2:python注釋
python注釋語法為 #注釋語句
也可以用三引號(hào)(多行字符串)的形式來做多行注釋
#可以在這里注釋 print('hello world') #也可以在這里注釋 """ 這是一個(gè)多行字符串,可以用來對(duì)代碼進(jìn)行多行注釋 """?
?
?
3:變量
正如其名字所述那般,變量的值是可以變化的,也就是說,你可以用變量來存儲(chǔ)任何東西。變量只是你的計(jì)算機(jī)內(nèi)存中用以存儲(chǔ)信息的一部分。python語言的變量可以用來存儲(chǔ)任意數(shù)據(jù)類型的值,所以可以看出python是一門動(dòng)態(tài)語言。與之對(duì)應(yīng)的是靜態(tài)語言,靜態(tài)語言在定義變量時(shí)必須指定變量類型,如果賦值的時(shí)候類型不匹配,就會(huì)報(bào)錯(cuò)。如Java就是典型的靜態(tài)語言。需要通過變量名來調(diào)用變量的值。
變量名的命名需要滿足以下規(guī)則:
1)變量名只能由字母,數(shù)字,下劃線組成,且首字符不能為數(shù)字
2)變量名不推薦使用關(guān)鍵字,變量名區(qū)分大小寫
定義一個(gè)變量(變量申明語句)的語法如下
name = 'rock' #變量名 賦值符號(hào) 值 age = 18定義變量名一般有兩種方式:駝峰體(UserName)和下劃線式(user_name,python中推薦使用這種方式)
變量有3個(gè)重要屬性:id標(biāo)記占用內(nèi)存中的位置,type數(shù)據(jù)類型,value值
name = 'rock' print(id(name),type(name),name) a == b #這里比較的是兩個(gè)變量的value值 a is b #這里比較的是兩個(gè)變量的id值內(nèi)存中分別分給變量名和變量一定內(nèi)存空間,變量名在內(nèi)存中指向變量,此時(shí)該變量的引用計(jì)數(shù)為1,若同時(shí)存在另一個(gè)變量名指向該變量,則該變量的引用計(jì)數(shù)為2,當(dāng)不存在任意一個(gè)變量名指向該變量時(shí),其引用計(jì)數(shù)變?yōu)?,此時(shí),python內(nèi)部的垃圾回收機(jī)制會(huì)把該變量當(dāng)成垃圾回收,以釋放內(nèi)存空間。
4:python數(shù)據(jù)類型
1)數(shù)字:數(shù)字分為整數(shù)(int)和浮點(diǎn)數(shù)(float)
2)字符串:包含在引號(hào)里面的字符序列(單引號(hào)/雙引號(hào)指定單行字符串,三引號(hào)用來指定多行字符串)
3)布爾型:只有兩種值,即True 和 False
????????#所有數(shù)據(jù)類型都自帶布爾值1、None,0,空(空字符串,空列表,空字典等)三種情況下布爾值為False2、其余均為真4)列表:
#在[]內(nèi)用逗號(hào)分隔,可以存放n個(gè)任意類型的值 names = ['wang','li','wu'] #取隊(duì)列中的值采用索引的方法,索引值從0開始, names[0] 即取隊(duì)列中的第一個(gè)值,也可用負(fù)數(shù)索引,names[-1] 即取隊(duì)列最后一個(gè)值5)字典:
#在{}內(nèi)用逗號(hào)分隔,可以存放多個(gè)key:value的值,value可以是任意類型 data = {'name':'mark','age':18,'hobbies':['run','eat']} #取字典里面的值 data['name'] 就可以得到值 mark ,取其它值類似6)元組:
atuple = (1,'sf,',3,'jkk') #屬于不可變類型7)集合:
aset = {1,'sf',2,'www'} #一組key的集合,key是不能重復(fù)的,所有集合中不存在重復(fù)的元素,元素只能是不可變類型?
5:基本運(yùn)算符
算術(shù)運(yùn)算符:+(加),-(減),*(乘),/(除),**(乘方),// (整除,結(jié)果向下取整),%(取余)
賦值運(yùn)算符:= ,+=(a+=1是a=a+1的快捷寫法,其它快捷寫法類似),-=,*=,/=
位操作符:
<< 左移,將數(shù)字的位向左移動(dòng)指定的位數(shù) 如 2<<2 解釋:2的二進(jìn)制為10,左移后為1000,即其結(jié)果為十進(jìn)制10
>> 右移,將數(shù)字的位向右移動(dòng)指定的位數(shù)
& 按位與
| 按位或
^ 按位異或
~ 按位取反
比較操作符:< 小于,> 大于,<= 小于等于,>= 大于等于,== 等于,!= 不等于
邏輯操作符:and (邏輯與),or (邏輯或),not (邏輯非)
6:格式化方法
1)使用占位符 %s(字符串占位符),%d(整數(shù)),%f(浮點(diǎn)數(shù))
print('My name is %s,my age is %s' %('lufei',18)) #若字符串中本身有一個(gè)普通%,則需要轉(zhuǎn)義 #%% 此時(shí)可表示一個(gè)普通的% print('rate:%s %%' %7)2)format()方法
name = 'rock' age = 18 print('{0}was{1}years old'.format(name,age)) #另一種寫法 print('{}was{}years old'.format(name,age))7:控制流語句
1)if 語句,即條件判斷語句
#if語句語法如下 if 條件表達(dá)式 : #注意不要丟了后面的冒號(hào)if塊 elif 條件表達(dá)式 : #可選部分elif塊 else : #可選部分else塊2)while循環(huán)語句
while....else 與 for ... else 中的else語句在正常遍歷完所有項(xiàng)目后執(zhí)行,即循環(huán)體內(nèi)沒有break語句、沒有return語句,或者沒有異常出現(xiàn)。
#while循環(huán)語句語法 while 條件表達(dá)式或條件語句: #注意后面的冒號(hào)不能丟循環(huán)塊 else: #可選部分else塊3)for循環(huán)語句
for循環(huán)主要用來進(jìn)行迭代(Iteration)操作,需要作用于一個(gè)可迭代對(duì)象
#for循環(huán)會(huì)在一系列對(duì)象上進(jìn)行迭代,意即它會(huì)遍歷序列中的每一個(gè)項(xiàng)目 #for...in循環(huán)語句的語法 for...in 序列: #后面有冒號(hào)結(jié)尾循環(huán)塊 else: #可選部分else塊 #使用如下方法判斷一個(gè)對(duì)象是否是可迭代對(duì)象 from collections import Iterable print(isinstance('abc', Iterable)) #True 所以字符串是可迭代對(duì)象,可用for...in 進(jìn)行迭代操作 print(isinstance([1,2,3], Iterable)) #True print(isinstance((1,2,3), Iterable)) #True print(isinstance({'name':'rock','age':18}, Iterable)) #True 默認(rèn)迭代的是key print(isinstance({1,2,3,'a'}, Iterable)) #True print(isinstance(123, Iterable)) #False用for...in 迭代字典時(shí)默認(rèn)迭代的是key,若需要迭代value,可以使用for value in adict.values();若需要同時(shí)迭代key和value,可以使用for k,v in adict.items()。如果大家對(duì)Python感興趣的話,可以加一下我們的學(xué)習(xí)交流摳摳群哦:649,825,285,免費(fèi)領(lǐng)取一套學(xué)習(xí)資料和視頻課程喲~
補(bǔ)充1:for...in 迭代還可以用來操作文件,可以依次取得文件的每一行內(nèi)容!!!
補(bǔ)充2:enumerate()函數(shù)可以把一個(gè)list變成索引-元素對(duì)
a = ['a','b','c','d'] print(enumerate(a)) for i,s in enumerate(a):print(i,s) # <enumerate object at 0x000001CFFEFA3FC0> # 0 a # 1 b # 2 c # 3 d b = 'rockyou' for i1,s1 in enumerate(b):print(i1,s1) # 0 r # 1 o # 2 c # 3 k # 4 y # 5 o # 6 u4)break語句與continue語句
break語句用來中斷循環(huán)語句(while循環(huán)或for循環(huán)),即跳出本層循環(huán),不影響上一層的循環(huán)
continue 語句用以告訴 Python 跳過當(dāng)前循環(huán)塊中的剩余語句,并繼續(xù)該循環(huán)的下一次迭代。
總結(jié)
以上是生活随笔為你收集整理的Python菜鸟之python入门的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吴恩达《Machine Learning
- 下一篇: 吴恩达《Machine Learning