python語句與語法
#1.python簡單語句的基本介紹
>>> while True: #简单的while循环 ... reply = input('Enter text:') #调用了Input,将输入传参给reply ... if reply == 'stop': break #如果输入的是stop就退出循环 ... print(reply.upper()) #如果输入的不是stop就一直将输入的转换为大写字母 ... Enter text:abc #这是第一个输入abc,看到下面转换成大写的ABC了 ABC Enter text:nihao123da NIHAO123DA Enter text:stop #这里输入了一个stop,然后循环就退出了 >>>
上面的程式碼利用了Python的while循環,它是Python最通用的循環語句。簡單的說,它的組成為:while這個單詞,之後跟一個其結果為真或假的表達式,再接一個當頂端測試為真(這時的True看做是永遠為真)時不停的迭代的嵌套程式碼區塊。
這個Input內建函數,在這裡用於透過控制台輸出,它會列印可選的參數字串作為提示,並傳回使用者輸入的回應字串。
利用巢狀程式碼區塊特殊規則的單行if語句也在這裡出現:if語句體出現在冒號之後的首行,而並不是在首行的下一行縮排。
最後,Python的break語句用來立即退出迴圈。也就是完全跳出迴圈語句而程式會繼續循環之後的部分。如果沒有這個退出語句,while迴圈會因為測驗總是真值而永遠迴圈下去。
>>> while True: ... reply = input('Enter text:') ... if reply == 'stop': #如果是stop就退出 ... break ... elif not reply.isdigit(): #如果输入的不是数字类型就打印Bad1 8次 ... print('Bad!' * 8) ... else: #否则就打印输入数字的2次方 ... print(int(reply) ** 2) ... #按回车下面是测试结果 Enter text:abc Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad! Enter text:a Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad! Enter text:2 4 Enter text:stop >>>
Python會執行首次測試為真所想匹的程式碼區塊,依照從上到下的順序,如果所有測試都是假,就執行else部分。
2.賦值、表達式與列印
賦值語句有些特性要特別記住,如下所示
賦值語句建立物件引用值,Python賦值語句會把物件引用值儲存在變數名稱或資料結構的元素內。賦值語句總是建立物件的引用值,而不是賦值物件。因此,Python變數更像是指針,而不是資料儲存區域。
變數名在首次賦值時會被建立。 Python會在首次將(即物件引用值)賦值給變數時建立其變數名稱。有些(並非全部)資料結構元素也會在賦值時建立(例如,字典中的元素,一些物件屬性)。一旦賦值了,每當這個變數名出線在表達式時,就會被其所引用的值取代。
變數名在引用前必須先賦值。使用尚未進行賦值的變數名稱是一種錯誤,如果你視圖這麼做,Python會引發異常,而不是傳回某種模糊的預設值;如果傳回預設值,就很難再程式找出輸入錯誤的地方。
執行隱式賦值的一些操作,在Python中,賦值語句會在許多情況下使用。例如,模組導入、函數和類別的定義、for循環變數以及函數參數全都是隱式賦值運算。
>>> seq = [1,2,3,4] >>> a,b,c,*d = seq >>> print(a,b,c,d) 1 2 3 [4] >>> L = [1,2,3,4] >>> while L: ... front, *L = L ... print(front,L) ... 1 [2, 3, 4] 2 [3, 4] 3 [4] 4 []
當使用一個有星號的名稱的時候,左邊的目標中的項數不需要與主題序列的長度相符。實際上,帶星號的名稱可以出現在目標中的任何地方
打印操作
#在python中,print語句可以實現打印--只是對程序員友善的標準輸出流的介面而已。從技術角度來講,這是把一個或多個物件轉換為其文字表達形式,然後發送給標準輸出或另一個類似文件的流。
檔案物件方法:例如file.write(str).列印作業是類似的,但更專注--檔案寫入方法是把字串寫入到任意的文件,print預設地把物件列印到stdout流,添加了一些自動的格式化。和文件方法不同,使用列印操作的時候,不需要把物件轉換為字串。
標準輸出流:標準輸出流(通常稱為stdout)只是發送一個程式的文字輸出的預設的地方。加上標準輸入流和錯誤流,它只是腳本啟動時所創建的3種資料連接中的一種。標準輸出通常會對應到啟動Python程式的窗口,除非它已經在作業系統的shell中重定向到一個檔案或管道。
if測試與文法規則
Python語法規則
Python語法有些特色是我們需要知道的: 語句是逐一執行的:python一般都會依照次序從頭到尾執行檔中嵌套區塊中的語句,但是像if(還有迴圈)這種語句會使得解釋器在程式內跳躍。因為Python經過一個程式的路徑叫做控制流程,像if這類會對其產生影響的語句,通常叫做控制流程語句。 區塊和語句的邊界會自動偵測。 Python的程式區塊中沒有大括號或「begin/end」等分隔字元;反之,Python使用首行下的語句縮排把巢狀區塊內的語句組合起來。同樣地,Python語句一般是不以分號終止的,一行的結尾通常就是該行所寫語句的結尾。
复合语句=首行+“: ” + 缩进语句。Python中所有复合语句都遵循相同格式:首行会以冒号终止,再接一个或多个嵌套语句,而且通常都是在首行下缩进的。缩进语句叫做块(有时叫做组)。在If语句中,elif和else分句是if的一部分,也是其本身嵌套块的首行。 空白行、空格以及注释通常都会忽略。文件中空白行将忽略(但在交互模式提示符下不会)。语句和表达式中的空格几乎都忽略(除了在字符串常量内,以及用在缩进时)。注释总是忽略:它们以#字符开头(不是在字符串常量内),而且延伸至该行的末尾。 文档字符串(docstring)会忽略,但会保存并由工具显示。Python支持的另一种注释,叫做文档字符串(简称docsting)。和#注释不同的是,文档字符串会在运行时保留下来以便查看。文档字符串只是出现在程序文件和一些语句顶端的字符串中。Python会忽略这些内容,但是,在运行时会自动将其附加在对象上,而且能由 文档工具显示。
while和for循环
while语句是Python语言中最通用的迭代结构。
>>> x = 'spam' >>> while x: ... print(x,end='') ... x = x[1:] ... spampamamm>>>
注意,这里使用end= ‘’关键字参数,使所有输出都出现在同一行,之间用空格隔开;
在python中:
break : 跳出最近所在的循环(跳过整个循环语句)
continue : 跳到最近所在循环的开头处(来到循环的首行)
pass:什么事也不做,只是空占位语句
循环else块:只有当循环正常离开时才会执行(也就是没有碰到break语句)
以上是python語言基本語句有什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!