2.1 條件結構
if語句
if 條件表示式: #注意有
冒號 **塊 #注意
縮排 else: #與if對齊
**塊
elif語句
if 條件:
**塊elif 條件:
**塊...
elif 條件:
**塊else:
**塊條件巢狀
同等縮排為同一條件結構
猜數字遊戲:
執行結果:
2.2range和xrange
產生一組有規律的資料
語法:range(start,end,step = 1) #start:起始值; end:終值; step:步長,不能為0,預設為1
range(start,end)
range(end) #0開始,不包含終值
以上都是生成真實的列表
xrange() #生成器,用多少生成多少;語法和range一樣;
python3中沒有xrange,當python3中的range功能與xrange一樣
顯示xrange列表內容用list(xrange(10))
2.3迴圈
while迴圈
while 條件: #注意有冒號
**塊 #注意縮排
for 迴圈
明確迴圈次數
語法for 乙個變數 in 可迭代的物件: #注意冒號
**塊可迭代的物件也就是說其值是可遍歷的,在python中可迭代的物件主要有string(字串)、list(列表)、tuple(元組)、dictionary(字典)、file(檔案)
for可以用列表解析和生成器表示式中:
列表解析
由一對中括號構成,先是乙個表示式 ,然後for迴圈;最後還可以加乙個條件
生成器表示式
用的是圓括號,和列表解析很像,但不建立列表而是返回生成器,和python2中xrange()以及python3中的range()函式一樣,一般在資料量比較大的時候使用
2.4 迴圈中的break,continue和else
break語句
跳出當前所在的迴圈結構
continue語句
停止當前迴圈,重新進入迴圈(也就是停止continue後面的語句)
在while迴圈中,用於判斷迴圈條件是否滿足(滿足則跳過continue後面的語句 ,重新進入迴圈)
在for迴圈中,用於判斷迭代是否已經結束
迴圈中的
else
如果迴圈**從break處終止,跳出迴圈
正常結束迴圈,則執行else中的**,while也可以和else搭配(正常結束while,執行else中的**)
2.5自定義函式
自定義函式的建立,語法
def 函式名(引數): #引數可寫可不寫,一般寫函式時,**塊先寫docstring,也就是**的注釋
**塊檢視乙個函式的docstring,可以:print 函式名.__doc__
預設引數
以賦值語句的形式提供
預設引數的值可以改變
不允許預設引數後面跟非預設引數,預設引數一般需要放置在引數列表的最後
關鍵字引數
直接寫上引數的名字賦值,一旦使用了關鍵字引數,後面的引數都必須使用關鍵字引數
關鍵字引數是讓呼叫者通過使用引數名區分引數
允許改變引數列表中的引數順序
傳遞函式
把函式名當作引數傳遞給另乙個函式
lambda函式,匿名函式
lambda 引數列表: 表示式 #注意冒號,返回的是表示式結果
2.6遞迴
遞迴必須要有邊界條件,即停止遞迴的條件
遞迴的**更簡潔,更符合自然邏輯,更容易理解
遞迴執行效率不高,系統資源消耗比迴圈大,一般沒有迴圈特徵,但有遞迴特徵採用,比如漢諾塔
2.7變數作用域
全域性變數
在程式**主體部分的變數
區域性變數
在函式中的變數
如果全域性變數和區域性變數同名,遵循內層遮蔽外層
python全域性變數不能在函式內重新賦值
global語句
強調全域性變數,使得全域性變數可以在函式內重新賦值
Linux基本內容介紹 2
檔案的元資料 命令別名和命令引用 linux的檔案管理命令,包括ls,cd,mkdir,rmdir,mv,cp,rm,cat,tac,head,more,less,tail,下面分別對每乙個命令的使用方法具體介紹 ls var grep e l.digit lower 2 顯示 etc目錄下,以任意...
Python2 X輸入函式
mystr raw input 請輸入指令 import os os.system mystr 執行結果 ps input返回的是數值型別,如int,float raw inpout返回的是 字串型別 string型別 若輸入是表示式,則input會計算出表示式的值,而raw input會原樣輸出 ...
python 基本內容
1.包 import 模組名 這個包首先在當前目錄找。每個模組中可以用 name 判斷是否為 main 來執行程式 建立包pack,建立乙個資料夾然後建立 init py import pack.filename pack.filename.f 引用包重新命名 import pack as newn...