零基礎(chǔ)Python完全自學(xué)教程4:Python語法特點(diǎn)
歡迎你來到站長學(xué)堂,今天學(xué)習(xí)的《零基礎(chǔ)Python完全自學(xué)教程》的內(nèi)容是《Python語法特點(diǎn)》。和每一個編程語言一樣,Python也有自己的語法特點(diǎn)。如注釋規(guī)則、代碼縮進(jìn)、編
永久美國免備案虛擬主機(jī)1元1天,15元1月,100元1年,1000元永久
站長在線旗下答案網(wǎng)站,全站所有題目,免費(fèi)查看答案和答案解析
歡迎你來到站長學(xué)堂,今天學(xué)習(xí)的《零基礎(chǔ)python完全自學(xué)教程》的內(nèi)容是《Python語法特點(diǎn)》。
和每一個編程語言一樣,Python也有自己的語法特點(diǎn)。如注釋規(guī)則、代碼縮進(jìn)、編碼規(guī)范等。接下來我們就詳細(xì)介紹這些語法特點(diǎn)。
4.1、Python注釋規(guī)則
注釋就是對代碼的解釋和說明,其目的是讓人們能夠更加輕松地了解代碼。注釋是編寫程序時,寫程序的人給一個語句、程序段、函數(shù)等的解釋或提示,能提高程序代碼的可讀性。注釋只是為了提高可讀性,不會被計(jì)算機(jī)編譯。
4.1.1、單行注釋
在Python中,使用#作為單行注釋的符號。從符號#開始直到這一行結(jié)束為止。#后面的所有內(nèi)容,都不被Python編譯器編譯。
語法如下:
# 注釋內(nèi)容
單行注釋通常放在要注釋的代碼的前一行或者右側(cè),以便用戶閱讀和理解。
第一種,單行注釋放在要注釋的代碼前一行
# 要求輸入身高,單位為m,如 1.70
height=float(input("請輸入您的身高:"))
第二中,單行注釋放在要注釋的代碼右側(cè)
height=float(input("請輸入您的身高:")) # 要求輸入身高,單位為m,如 1.70
以上兩種寫法,運(yùn)行以后,輸入數(shù)值1.70,最后結(jié)果如下:
請輸入您的身高:1.70
>>>
站長在線溫馨提示:添加的注解即要有意義,又能充分體現(xiàn)代碼的作用。如:
bmi=weight/(height*height) # 站長在線,請勿改動
上行代碼的注解,毫無意義。其他人仍然看不懂是什么,為什么。屬于沉于的注解。
bmi=weight/(height*height) # 用于計(jì)算BMI指數(shù),公式為 “體重/(身高*身高)”
上行代碼為標(biāo)準(zhǔn)的注釋,可以告訴讀者,本行代碼的實(shí)際意義。
單行注釋可以出現(xiàn)在代碼的任意位置,但是不能分隔關(guān)鍵字和標(biāo)識符。如,下行代碼就是錯誤的:
height=float(# 要求輸入身高 input("請輸入您的身高:"))
溫馨提示:在idle開發(fā)環(huán)境中,選中所要注釋的代碼,點(diǎn)擊格式--注釋(Alt+3),也能將代碼注釋掉;選中所要注釋的代碼,點(diǎn)擊格式--取消注釋(Alt+4),可以將注釋取消。
4.1.2、多行注解
在Python中,可以使用一對三引號('''……'''或者"""……"""),且三引號之間,沒有沒有出現(xiàn)在語句之中,則稱為注釋。
'''……''' 寫法:在英文輸入法狀態(tài),連續(xù)敲3次鍵盤上的'即可,'就是;號右邊的鍵盤。
"""……""" 寫法:在英文輸入法狀態(tài),按住上檔鍵Shift+'鍵就是"了。'和"在同一鍵盤上面。
具體的寫法代碼如下:
'''
多行注解內(nèi)容1
多行注解內(nèi)容2
多行注解內(nèi)容3
……
'''
或者這樣寫:
"""
多行注解內(nèi)容1
多行注解內(nèi)容2
多行注解內(nèi)容3
……
"""
特別注意:不管是單三引號,還是雙三引號,都必須是成對出現(xiàn)的,否則報錯,錯誤類型為:
unterminated triple-quoted string literal (detected at line XXX)
翻譯過來就是:未終止的三引號字符串文字(在第XXX行檢測到)
多行注釋,通常用于Python文件、模塊、類、庫、函數(shù)等添加版權(quán)、功能信息使用。如:
'''
*文件名:bmi.py
*版權(quán)所有:站長在線
*文件功能描述:根據(jù)身高、體重計(jì)算BMI指數(shù)
*創(chuàng)建日期:2021年10月10日
*修改日期:2021年10月15日
*創(chuàng)建人:站長在線
*修改內(nèi)容:增加注釋,方便其他用戶查看
'''
站長在線提醒,如果三引號不管是'''……'''還是"""……""" ,如果出現(xiàn)在語句中,那么就不是注釋,而是字符串,如下代碼:
print('''根據(jù)身高、體重計(jì)算BMI指數(shù)''')
運(yùn)行結(jié)果如下:
根據(jù)身高、體重計(jì)算BMI指數(shù)
>>>
在Python3中,默認(rèn)采用的是UTF-8。UTF-8支持世界上大多數(shù)語言的字符,也包括中文。如果不想使用默認(rèn)編碼,就在文件第一行聲明文件編碼,也就是文件編碼聲明注釋。
語法格式如下:
# -*- coding:編碼 -*-
或者
#coding=編碼
在中文中,通常使用兩個編碼一個是UTF-8,另一個就是GBK。使用GBK注釋如下:
# -*- coding:gbk -*-
或者
#coding=gbk
當(dāng)然寫成下面的也是對的
#coding:gbk
站長在線溫馨提示:一般情況下,文件編碼不用寫,即默認(rèn)的UTF-8是最好的編碼。
4.2、Python代碼縮進(jìn)
代碼縮進(jìn)是指在每一行代碼左端空出一定長度的空白,從而可以更加清晰的從外觀上看出程序的邏輯結(jié)構(gòu)。
區(qū)分一個代碼塊,采用代碼縮進(jìn)和冒號“:”區(qū)分代碼之間的層次。
代碼縮進(jìn)可以使用空格或者Tab鍵來實(shí)現(xiàn)。如果使用空格則使用4個空格作為一個縮進(jìn)量。如果使用Tab鍵則一個Tab鍵作為一個縮進(jìn)量。通常情況下,建議使用空格進(jìn)行縮進(jìn)。
在Python中,行尾的冒號和下一行的縮進(jìn)表示代碼塊的開始;而縮進(jìn)的結(jié)束,則表示代碼塊的結(jié)束。
下面代碼是正確的縮進(jìn)代碼,大家可以復(fù)制代碼,用自己的Python IDLE運(yùn)行一下代碼,可以做一個小測試哦!到時候用Python做一個網(wǎng)頁程序運(yùn)行Python代碼。
height=float(input("請輸入您的身高:")) # 要求輸入身高,單位為m,如 1.70
weight=float(input("請輸入您的體重:")) # 要求輸入體重,單位為kg,如 50
bmi=weight/(height*height) # 用于計(jì)算BMI指數(shù),公式為“體重/身高的平方”
# 判斷身材是否合理
if bmi<18.5:
print("您的BMI指數(shù)為:"+str(bmi)) #輸出BMI指數(shù)
print("您的體重過輕 ~@_@~")
if bmi>=18.5 and bmi<24.9:
print("您的BMI指數(shù)為:"+str(bmi)) #輸出BMI指數(shù)
print("正常范圍,注意保持 (-_-)")
if bmi>=24.9 and bmi<29.9:
print("您的BMI指數(shù)為:"+str(bmi)) #輸出BMI指數(shù)
print("您的體重過重 ~@_@~")
if bmi>=29.9:
print("您的BMI指數(shù)為:"+str(bmi)) #輸出BMI指數(shù)
print("肥胖 ^@_@^")
在Python中,對代碼的縮進(jìn)的有嚴(yán)格的要求,相同級別的代碼塊的縮進(jìn)量必須相同。否則會出現(xiàn)SyntaxError錯誤,錯誤代碼提示如下:
unexpected indent (中文翻譯:意外縮進(jìn))
最后,告訴大家的是,默認(rèn)的IDLE是可以修改縮進(jìn)量的,可以把默認(rèn)的4個空格改成其他數(shù)字。方法:選項(xiàng)--配置IDLE--修改縮進(jìn)量。
圖4.2 左半邊為代碼縮進(jìn)錯誤提示,右半邊為修改基本縮進(jìn)量參數(shù)。
4.3、Python編碼規(guī)范
在Python編程中,遵循一定的代碼編寫規(guī)則和命名規(guī)范可以使代碼更加規(guī)范化,對代碼的理解和維護(hù)起到至關(guān)重要的作用。
如果你開始編寫更長、更復(fù)雜的Python代碼,那么久不得不開始討論編碼規(guī)范了,大多數(shù)語言都能以不同的風(fēng)格被編寫。在Python中,采用PEP 8 《Python 代碼風(fēng)格指南》作為編碼規(guī)范。Python創(chuàng)始人Guido 的主要見解之一是:代碼的閱讀頻率遠(yuǎn)高于編寫代碼。此處提供的指南旨在提高代碼的可讀性,并使其在廣泛的 Python 代碼范圍內(nèi)保持一致。下面是簡要描述,完整的請參考PEP 8。
4.3.1、Python編寫規(guī)則
4.3.1.1、import語句
每一個import語句,只導(dǎo)入一個模塊,盡量避免一次導(dǎo)入多個模塊。如:碼4.3.1.1.1為推薦寫法,而碼4.3.1.1.2為不推薦的寫法:
import os
import sys
碼4.3.1.1.1為推薦寫法
import os,sys
碼4.3.1.1.2為不推薦的寫法
4.3.1.2、分號
不要在行尾添加分號“;”,也不要將兩條命令放在同一行。如:碼4.3.1.2.1和碼4.3.1.2.2都是不規(guī)范寫法
height=float(input("請輸入您的身高:"));
weight=float(input("請輸入您的體重:"));
碼4.3.1.2.1為不規(guī)范的寫法
print ("要么出眾");print ("要么出局");
碼4.3.1.2.2為不規(guī)范的寫法
4.3.1.3、行長度
建議每行不超過79個字符。(注意:一個中文漢字是兩個字符)。如果超過,建議使用小括號()將多行內(nèi)容隱式的鏈接起來。不推薦使用反斜杠“\”。正確寫法如下:
print("努力的意義:"
"不要當(dāng)父母需要你時,除了淚水,一無所有。"
"不要當(dāng)孩子需要你時,除了慚愧,一無所有。"
"不要當(dāng)自己回首過去,除了蹉跎,一無所有。")
例外情況:1、導(dǎo)入模塊的語句過長。2、注釋里的url過長。(長注釋的URL單獨(dú)放一行)
4.3.1.4、空行
使用必要的空行可以增加代碼的可讀性。用空行分隔函數(shù)和類,及函數(shù)內(nèi)較大的代碼塊。
4.3.1.5、空格
通常情況下,運(yùn)算符兩側(cè)、函數(shù)參數(shù)之間、逗號“,”兩側(cè)建議使用空格進(jìn)行分隔。
4.3.1.6、字符串
應(yīng)該避免在循環(huán)中使用+和+=操作符累加字符串。
4.3.1.7、縮進(jìn)
用 4 個空格,不要用制表符。4 個空格是小縮進(jìn)(更深嵌套)和大縮進(jìn)(更易閱讀)之間的折中方案。制表符會引起混亂,最好別用。
4.3.1.8、異常處理結(jié)構(gòu)
適當(dāng)使用異常處理結(jié)構(gòu)提高程序容錯性,但不能過多依賴異常處理結(jié)構(gòu),適當(dāng)?shù)娘@示判斷還是必要的。
4.3.1.9、字符編碼
Python 默認(rèn)的 UTF-8 或純 ASCII 可以勝任各種情況。不要在標(biāo)識符中使用非 ASCII 字符。
4.3.2、Python命名規(guī)范
命名規(guī)范在編寫Python代碼中起到了只要的作用,雖然不遵守命名規(guī)范,程序也是可以運(yùn)行的,但是使用正確的命名規(guī)范,可以更加直觀的了解代碼的真實(shí)含義。接下來,站長在線就開始介紹Python中的常用的命名規(guī)范。
注意:所有的命名規(guī)范都要準(zhǔn)守這三條
1.命名只能以字母或者_(dá)下劃線開頭
2.名字不能包含空格
3.名字不能與關(guān)鍵字重合
4.3.2.1、模塊 module_name
模塊名盡量短小,且全部使用小寫的字母命名,可以使用,但盡量不要使用下劃線(除非多個單詞,且數(shù)量不多的情況),如:
# 正確的模塊名
import decoder
import html_parser
# 不推薦的模塊名
import Decoder
4.3.2.2、包 package_name
包名應(yīng)該是簡短的、且全部使用小寫的名母命名,不推薦使用下劃線。
# 正確的包名
mypackage
com.olzz
# 不推薦的包名
com_olzz
4.3.2.3、類名 classname
類名采用單詞首字母大寫形式。(即Psacal風(fēng)格)。如,Myclass。
4.3.2.4、模塊內(nèi)部
模塊內(nèi)部采用下劃線“_”+Psacal風(fēng)格的類名組成。如BorrowBook類中的內(nèi)部類,可以使用_BorrowBook命名。
4.3.2.5、函數(shù) function_name、類的屬性、方法 method_name
一律小寫,如有多個單詞,用下劃線“_”隔開,私有函數(shù)可用前導(dǎo)下劃線
常量、全局變量命名時采用全部大寫字母,多個單詞用_下劃線隔開,如需要阻止導(dǎo)入模塊內(nèi)的全局變量,可以加一個前導(dǎo)下劃線,global_VAR_NAME,_GLOBAL_VAL。
4.3.2.7、變量 var_name
變量名一般小寫,多個單詞用_下劃線隔開,同函數(shù)命名。
私有類成員使用單一下劃線前綴標(biāo)識。
使用雙下劃線“__”開頭的實(shí)例變量或方法是類私有的。
下節(jié)預(yù)告:零基礎(chǔ)Python完全自學(xué)教程5:Python中的變量
課后練習(xí):(不定項(xiàng)選擇題,最少一個答案,答案見下期)
4.1、在Python中用()作為單行注釋的?
A、#
B、*
C、“”
D、>>>
4.2、在Python中,可以用于多行注解的有( )
A、'''……'''
B、"""……"""
C、<!-- …… -->
D、/* …… */
4.3、在Python中,默認(rèn)編碼是( )
A、UTF-8
B、GBK
C、ASCII
4.4、在Python編寫規(guī)則中,正確的有( )
A、行的長度不超過79個漢字。
B、縮進(jìn)使用制表符比空格要好。
C、一般情況下不準(zhǔn)空行。
D、不要在行尾加分號。
上期答案:3.1、ABCD 3.2、A 3.3、A
文末福利:
1、關(guān)注站長在線官方公眾號【站長在線】微信號:olzzcom ,文末也有公眾號二維碼,關(guān)注公眾號以后回復(fù)python,本站精心整理的Python書籍、軟件、工具都實(shí)時更新哦!本站所安裝的python3.10、IDLE中文版 、PyCharm、Visual Studio Code、Sublime Text4等都在里面哦!
2、站長在線官方微信交流群已經(jīng)開通了,微信掃碼進(jìn)入,一起交流,一起進(jìn)步!
本文地址:http://003188.cn/pythonyftd.html
阿里云虛擬主機(jī)1G空間,120元一年
香港、美國虛擬主機(jī)100元一年,1000元永久
騰訊云雙十一0.4折起,2核8G5M三年僅700元,2核4G8M三年僅198元
猜你喜歡