




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Python 基礎(chǔ)語法Python 的特點(diǎn)1. 簡單Python 是一種代表簡單思想的語言。2. 易學(xué)Python 有極其簡單的語法。3. 免費(fèi)、開源Python 是 FLOSS (自由 /開放源碼軟件)之一。4. 高層語言使用 Python 編寫程序時無需考慮如何管理程序使用的內(nèi)存一類的底層細(xì)節(jié)。5. 可移植性Python 已被移植到很多平臺,這些平臺包括 Linux 、Windows 、FreeBSD、Macintosh 、Solaris、OS/2、 Amiga 、 AROS 、 AS/400 、BeOS、OS/390、z/OS、Palm OS、QNX 、VMS 、Psion、Acom R
2、ISC OS 、VxWorks 、PlayStation、Sharp Zaurus、Windows CE 甚至還有PocketPC。6. 解釋性可以直接從源代碼運(yùn)行。在計算機(jī)內(nèi)部, python 解釋器把源代碼轉(zhuǎn)換為字節(jié)碼的中間形式,然后再把它翻譯成計算機(jī)使用的機(jī)器語言。7. 面向?qū)ο驪ython 既支持面向過程編程也支持面向?qū)ο缶幊獭?. 可擴(kuò)展性部分程序可以使用其他語言編寫,如c/c+ 。9. 可嵌入型可以把 Python 嵌入到 c/c+程序中,從而提供腳本功能。10. 豐富的庫Python 標(biāo)準(zhǔn)庫確實很龐大。它可以幫助你處理各種工作,包括正則表達(dá)式、文檔生成、單元測試、線程、數(shù)據(jù)庫、網(wǎng)
3、頁瀏覽器、 CGI 、FTP 、電子郵件、 XML 、 XML-RPC 、 HTML 、 WAV 文件、密碼系統(tǒng)、 GUI (圖形用戶界面)、 Tk 和其他與系統(tǒng)有關(guān)的操作。- 分割線 -以下是 Python 的基本語法 -一、基本概念1. python 中數(shù)有四種類型:整數(shù)、長整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)。整數(shù),如 1長整數(shù)是比較大的整數(shù)浮點(diǎn)數(shù)如 1.23、 3E-2復(fù)數(shù)如 1 + 2j、 1.1 + 2.2j2. 字符串(字符的序列)python 中單引號和雙引號使用完全相同。使用三引號 (或 ) 可以指定一個多行字符串。轉(zhuǎn)義符 自然字符串, 通過在字符串前加 r 或 R。 如 python 允許處
4、理 unicode 字符串,加前綴 u 或Python 基礎(chǔ)語法rthis is a line with n則 n 會顯示,并不是換行。U, 如 uthis is an unicode string 。字符串是不可變的。按字面意義級聯(lián)字符串,如this is string會被自動轉(zhuǎn)換為this is string 。3. 標(biāo)識符的命名第一個字符必須是字母表中字母或下劃線_。標(biāo)識符的其他的部分有字母、數(shù)字和下劃線組成。標(biāo)識符對大小寫敏感。4. 對象python 程序中用到的任何“東西”都成為“對象”。5. 邏輯行和物理行物理行是我們在編寫程序時看到的,邏輯行則是python 看到的。python
5、 中分號 ;標(biāo)識一個邏輯行的結(jié)束,但是實際中一般每個物理行只寫一個邏輯行,可以避免使用分號。多個物理行中可以寫一個邏輯行,如下:s = peter is writing this article上面 的使用被稱為明確的行連接,又如:print peter6. 縮進(jìn)空白在 python 是非常重要的,行首的空白是最重要的,又稱為縮進(jìn)。行首的空白(空格和制表符)用來決定邏輯行的縮進(jìn)層次,從而決定語句分組。這意味著同一層次的語句必須有相同的縮進(jìn),每一組這樣的語句稱為一個塊。注意:不要混合使用空格和制表符來縮進(jìn),因為在跨越不同的平臺時無法正常工作。二、運(yùn)算符與表達(dá)式1. 運(yùn)算符與其用法運(yùn)算符名稱說明例
6、子+加兩個對象相加3 + 5 得到 8。a + b得到 ab。-減得到負(fù)數(shù)或是一個數(shù)減去另一個數(shù)-5.2 得到一個負(fù)數(shù)。50 - 24 得到 26。*乘兩個數(shù)相乘或是返回一個被重復(fù)若干次的字符串2 * 3得到 6。 la * 3 得到 lalala。* 冪返回 x 的 y 次冪3 * 4 得到 81(即 3 * 3 * 3 * 3 )Python 基礎(chǔ)語法/除x 除以 y 4/3 得到 1(整數(shù)的除法得到整數(shù)結(jié)果)。4.0/3 或 4/3.0 得到 1.3333333333333333/取整除返回商的整數(shù)部分4 / 3.0 得到 1.0%取模返回除法的余數(shù)8%3 得到 2。 -25.5%2.2
7、5 得到 1.5左移把一個數(shù)的比特向左移一定數(shù)目(每個數(shù)在內(nèi)存中都表示為比特或二進(jìn)制數(shù)字,即0 和 1) 2右移把一個數(shù)的比特向右移一定數(shù)目11 1得到 5。 11 按比特表示為 1011,向右移動1 比特后得到 101,即十進(jìn)制的5。&按位與數(shù)的按位與5& 3 得到 1。|按位或數(shù)的按位或5| 3 得到 7。按位異或數(shù)的按位異或5 3得到 6按位翻轉(zhuǎn)x 的按位翻轉(zhuǎn)是 -(x+1)5 得到 6。小于返回 x 是否小于 y。所有比較運(yùn)算符返回 1表示真,返回 0 表示假。這分別與特殊的變量True和 False 等價。注意,這些變量名的大寫。 5 3 返回 0(即 False)而 3 5 返回
8、1(即 True)。比較可以被任意連接: 3 5 大于返回 x 是否大于 y 5 3返回 True。如果兩個操作數(shù)都是數(shù)字,它們首先被轉(zhuǎn)換為一個共同的類型。否則,它總是返回 False。=小于等于返回 x 是否小于等于y x = 3; y = 6; x =大于等于返回 x 是否大于等于y x = 4; y = 3; x = y返回 True。=等于比較對象是否相等x = 2; y = 2; x = y 返回 True。x = str; y = stR; x = y 返回 False。x = str;y = str; x = y 返回 True。!=不等于比較兩個對象是否不相等x = 2; y
9、= 3; x != y返回 True。not布爾“非”如果 x 為 True,返回 False。如果 x 為 False,它返回 True。 x = True; not y 返回 False。and 布爾“與”如果 x 為 False, x and y 返回 False,否則它返回y 的計算值。x = False; y = True; x andy,由于 x 是 False,返回 False。在這里, Python 不會計算y,因為它知道這個表達(dá)式的值肯定是False(因為x 是 False)。這個現(xiàn)象稱為短路計算。or布爾“或”如果 x 是 True,它返回True,否則它返回y 的計算值。
10、x = True; y = False; x or y返回2. 運(yùn)算符優(yōu)先級(從低到高)運(yùn)算符描述lambdaLambda 表達(dá)式or布爾“或”and 布爾“與”not x布爾“非”in, not in成員測試is, is not 同一性測試,=, != , =比較|按位或 按位異或& 按位與 移位+,- 加法與減法*, /, % 乘法、除法與取余+x, -x 正負(fù)號x 按位翻轉(zhuǎn)* 指數(shù)x.attribute屬性參考xindex下標(biāo)xindex:index 尋址段f(arguments.) 函數(shù)調(diào)用(experession,.)綁定或元組顯示expression,. 列表顯示key:datum
11、,.字典顯示expression,. 字符串轉(zhuǎn)換3. python 控制臺輸出使用printPython基礎(chǔ)語法print abc#打印 abc 并換行print abc%s % d#打印 abcdprint abc%sef%s % (d, g)#打印abcdefg三、控制流1. if 語句i = 10n = int(raw_input(enter a number:)if n = i:print equalelif n 刪除一個變量 /名稱, del 之后,該變量就不能再使用。六、數(shù)據(jù)結(jié)構(gòu)python 有三種內(nèi)建的數(shù)據(jù)結(jié)構(gòu):列表、元組和字典。1. 列表list 是處理一組有序項目的數(shù)據(jù)結(jié)構(gòu),
12、列表是可變的數(shù)據(jù)結(jié)構(gòu)。列表的項目包含在方括號 中,eg: 1,2, 3 , 空列表 。判斷列表中是否包含某項可以使用in, 比如l = 1, 2, 3; print 1 in l; #True;支持索引和切片操作;索引時若超出范圍,則IndexError ;使用函數(shù)len() 查看長度;使用del 可以刪除列表中的項,eg: dell0 #如果超出范圍,則IndexErrorlist 函數(shù)如下:append( value)- 向列表尾添加項valuel = 1, 2, 2l.append(3) #1, 2, 2, 3count(value)-返回列表中值為value的項的個數(shù)l = 1, 2,
13、 2Python 基礎(chǔ)語法print l.count(2) # 2extend(list2)-向列表尾添加列表 list2l = 1, 2, 2l1 = 10, 20l.extend(l1)print l#1, 2, 2, 10, 20index(value, start, stop)- 返回列表中第一個出現(xiàn)的值為value 的索引,如果沒有,則異常ValueErrorl = 1, 2, 2a = 4try:print l.index(a)except ValueError, ve:print there is no %d in list % ainsert(i, value)- 向列表 i
14、位置插入項 vlaue,如果沒有i,則添加到列表尾部l = 1, 2, 2l.insert(1, 100)print l #1, 100, 2, 2l.insert(100, 1000)print l #1, 100, 2, 2, 1000pop(i) - 返回 i 位置項,并從列表中刪除;如果不提供參數(shù),則刪除最后一個項;如果提供,但是 i 超出索引范圍,則異常 IndexErrorl = 0, 1, 2, 3, 4, 5print l.pop() # 5print l #0, 1, 2, 3, 4print l.pop(1) #1print l #0, 2, 3, 4try:l.pop(1
15、00)except IndexError, ie:print index out of rangeremove(value)- 刪除列表中第一次出現(xiàn)的value,如果列表中沒有vlaue,則異常ValueErrorl = 1, 2, 3, 1, 2, 3l.remove(2)print l #1, 3, 1, 2, 3try:l.remove(10)except ValueError, ve:print there is no 10 in listreverse()- 列表反轉(zhuǎn)l = 1, 2, 3l.reverse()print l #3, 2, 1Python 基礎(chǔ)語法sort(cmp=N
16、one, key=None, reverse=False)-列表排序【 Python Library Reference 】cmp:cmp specifies a custom comparison functionof two arguments (iterable elements) whichshould return anegative, zero or positive number depending on whether the first argument is considered smaller than, equal to, orlarger than the secon
17、d argument:cmp=lambda x,y: cmp(x.lower(), y.lower()key:key specifies a functionof one argument that is used to extract a comparison key from each list element:key=str.lowerreverse:reverse is a boolean value. If set to True, then the list elements are sorted as if each comparison were reversed.In gen
18、eral, the key and reverse conversion processes are much faster than specifying anequivalent cmp function. This is because cmp is called multiple times for each list element while key and reverse touch each element only once.l5 = 10, 5, 20, 1, 30l5.sort()print l5 #1, 5, 10, 20, 30l6 = bcd, abc, cde,
19、bbbl6.sort(cmp = lambda s1, s2: cmp(s10,s21)print l6 #abc, bbb, bcd, cdel7 = bcd, abc, cde, bbb, fafl7.sort(key = lambda s: s1)print l7 #faf, abc, bbb, bcd, cde2. 元組tuple 和 list 十分相似,但是tuple 是不可變的,即不能修改tuple,元組通過圓括號中用逗號分割的項定義;支持索引和切片操作;可以使用in查看一個元素是否在tuple 中??赵M () ;只含有一個元素的元組(a,) # 需要加個逗號優(yōu)點(diǎn): tuple
20、比 list 速度快;對不需要修改的數(shù)據(jù)進(jìn)行寫保護(hù),可以是代碼更安全tuple 與 list 可以相互轉(zhuǎn)換,使用內(nèi)置的函數(shù)list() 和 tuple() 。l = 1, 2, 3print l # 1, 2, 3t = tuple(l)print t # (1, 2, 3)l1 = list(t)print l1 #1, 2, 3元組最通常的用法是用在打印語句,如下例:name = Peter Zhangage = 25print Name: %s; Age: %d % (name, age)# Name: Peter Zhang; Age: 25函數(shù)如下:count(value)-返回元組中值為value 的元素的個數(shù)t = (1, 2, 3, 1, 2, 3)print t.count(2) # 2index(value, start, stop) - 返回列表中第一個出現(xiàn)的值為 value 的索引,如果沒有,則異常 ValueErrorPython 基礎(chǔ)語法t = (1, 2, 3, 1, 2, 3)print t.index(3) # 2try:print t.index(4)except ValueError, ve:print there is no 4 in tuple# there is no 4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年5G網(wǎng)絡(luò)通信設(shè)備采購合同標(biāo)準(zhǔn)
- 2025年醋酸乙烯酯項目建議書
- 2025年摻混肥項目合作計劃書
- 2025年本地網(wǎng)傳輸系統(tǒng)項目合作計劃書
- 強(qiáng)化法治教育促進(jìn)遵紀(jì)守法計劃
- 學(xué)習(xí)困難學(xué)生支持方案計劃
- 水庫管理與調(diào)度方案計劃
- 選擇合適的理財工具計劃
- 2025年金屬門窗及類似制品項目發(fā)展計劃
- 2025年中國顯控系統(tǒng)行業(yè)供需態(tài)勢、競爭格局及投資前景分析報告(智研咨詢)
- 1 聚聚散散 教案人教版美術(shù)四年級下冊
- 綜合實踐活動勞動與技術(shù)八年級下冊教案
- LS 8010-2014植物油庫設(shè)計規(guī)范
- GB/T 12618-1990開口型扁圓頭抽芯鉚釘
- GB/T 12006.2-2009塑料聚酰胺第2部分:含水量測定
- GA/T 458-2021居民身份證質(zhì)量要求
- 礦區(qū)水工環(huán)地質(zhì)工作
- 中國結(jié)英文介紹
- 全口義齒的制作課件
- 人教版2023年初中道法八年級下冊知識點(diǎn)匯總(思維導(dǎo)圖)
- 云停車平臺商戶使用說明
評論
0/150
提交評論