官术网_书友最值得收藏!

第2章 Python語言基礎(chǔ)

2.1 注釋

注釋,是指在代碼中對代碼功能進(jìn)行解釋說明的標(biāo)注性文字,可以提高代碼的可讀性,讓代碼更容易理解和維護(hù)。程序運(yùn)行時(shí),注釋的內(nèi)容將被Python解釋器忽略,并且不會在執(zhí)行結(jié)果中體現(xiàn)出來。

編寫程序時(shí),及時(shí)添加注釋不但可以記錄程序的作用和功能,還可以通過注釋對程序進(jìn)行調(diào)試,這是一些有經(jīng)驗(yàn)的編程人員經(jīng)常使用的調(diào)試手段。

Python通常包括3種類型的注釋,分別是單行注釋、多行注釋和中文編碼聲明注釋。

2.1.1 單行注釋

在Python中,可使用“#”作為單行注釋的符號。從“#”開始直到換行為止,其中的所有內(nèi)容都作為注釋而被Python解釋器忽略。語法格式如下。

# 注釋內(nèi)容

單行注釋可以放在要注釋代碼的前一行,也可以放在要注釋代碼的右側(cè)。例如,下面的兩種注釋形式都是正確的。

當(dāng)行注釋(注釋直接占一行) :

# 數(shù)字競猜小游戲程序
# 預(yù)設(shè)競猜數(shù)字給變量instr
instr = input("請輸入預(yù)設(shè)的競猜數(shù)字:")

行末注釋(在代碼的右側(cè)添加注釋):

guess = -1                                   # 設(shè)置默認(rèn)輸入的競猜數(shù)字為-1
print("======數(shù)字猜謎小游戲======")           # 輸出游戲名稱
while guess != number:                       # 如果競猜錯(cuò)誤,重新競猜

使用當(dāng)行注釋還是行末注釋,需要根據(jù)編寫程序的實(shí)際情況進(jìn)行選擇,當(dāng)需要解釋、說明的內(nèi)容較多時(shí),推薦使用當(dāng)行注釋。當(dāng)行注釋和行末注釋的綜合應(yīng)用代碼如下。

# 用戶登錄判斷程序
# 只要輸入user列表中的用戶,就可以模擬登錄系統(tǒng)
user=['like','ming','sun','xiaobei','star'] # 用戶名稱列表
while True:                                 # 要求重復(fù)輸入,直到輸入正確的用戶名稱
    instr = input('用戶名稱:')            # 要求輸入用戶名稱
    if instr in user:                     # 如果輸入的用戶在列表中
        print('正在進(jìn)入系統(tǒng),請稍后!')
        break                             # 退出程序
    else:
        print('密碼不正確,請重新輸入!')
continue                          # 繼續(xù)執(zhí)行程序

注意

在任何代碼行前面加上“#”符號,該行代碼就可以變成注釋。利用這個(gè)方法,在遇到程序中暫時(shí)無法調(diào)試的代碼時(shí),可以先將其變成注釋的形式,進(jìn)行部分程序的優(yōu)先調(diào)試。

2.1.2 多行注釋

在Python中,并沒有單獨(dú)的多行注釋標(biāo)記,而是將包含在一對三引號(' ' '……' ' ')或者(" " "……" " ")之間的內(nèi)容都稱為多行注釋。這樣的內(nèi)容將被解釋器忽略。由于這樣的內(nèi)容可以分為多行編寫,所以也作為多行注釋。語法格式如下。

'''
注釋內(nèi)容1
注釋內(nèi)容2
……
''' 

或者

"""
注釋內(nèi)容1
注釋內(nèi)容2
……
"""

多行注釋通常用來為Python文件、模塊、類或者函數(shù)等添加版權(quán)、功能等信息,例如,下面的代碼將使用多行注釋為程序添加功能、開發(fā)者、版權(quán)所有、開發(fā)日期等信息。

'''
信息加密模塊
開發(fā)者:天星
版權(quán)所有:明日科技
2018年9月
'''

多行注釋也經(jīng)常被用來解釋代碼中重要的函數(shù)、參數(shù)等信息,便于后續(xù)開發(fā)者維護(hù)代碼,例如:

'''
庫存類主要的函數(shù)
update改/更新
find查找
delete刪除
create添加
'''

多行注釋其實(shí)可以采用單行注釋多行書寫的方式實(shí)現(xiàn),如上面的多行注釋可以寫成如下形式。

# 庫存類主要的函數(shù)
# update改/更新
# find查找
# delete刪除
# create添加

2.1.3 中文編碼聲明注釋

在Python中編寫代碼的時(shí)候,如果用到指定字符編碼類型的中文編碼,需要在文件開頭加上中文編碼聲明注釋,這樣可以在程序中指定字符編碼類型的中文編碼,不至于出現(xiàn)代碼錯(cuò)誤。所以說,中文編碼聲明注釋很重要。Python 3.x提供的中文編碼聲明注釋語法格式如下。

# -*- coding:編碼 -*-

或者

# coding=編碼

例如,保存文件編碼格式為UTF-8,可以使用下面的中文編碼聲明注釋。

# -*- coding:utf-8 -*-

為代碼添加注釋,是一個(gè)優(yōu)秀的程序員必須要做的工作。但要確保注釋的內(nèi)容都是重要的,看一眼就知道代碼的作用,而有些代碼是不需要加注釋的。

說明

在上面的代碼中,“-*-”沒有特殊的作用,只是為了美觀才加上的,所以上面的代碼也可以使用“# coding:utf-8”代替。

為了便于讀者理解程序中的代碼,本書對大多數(shù)代碼都進(jìn)行了注釋。在實(shí)際開發(fā)中,讀者只要對關(guān)鍵代碼進(jìn)行注釋就可以了,不必像本書一樣。

2.1.4 注釋程序進(jìn)行調(diào)試

在編碼時(shí),有些代碼可能會出現(xiàn)編碼錯(cuò)誤,無法編譯;或者我們不希望編譯、運(yùn)行程序中的某些代碼,這時(shí)可以將這些代碼注釋掉。這種調(diào)試方式簡單、實(shí)用,有經(jīng)驗(yàn)的程序員經(jīng)常采用這種方式進(jìn)行程序調(diào)試。下面以計(jì)算長方形的對角線長、周長和面積為例來演示如何通過注釋調(diào)試程序。計(jì)算長方形的對角線長、周長和面積的代碼如下。

a,b=map(float,input('請輸入長方形兩個(gè)邊的邊長,用英文逗號間隔:').split(','))
s=a*b
l=(a+b)*2
d=(a**2+b**2)**(1/2)
print('長方形的對角線長為:',d)   # 輸出長方形的對角線長
print('長方形周長為:',l)        # 輸出長方形周長
print('長方形面積為:',s)        # 輸出長方形面積

在上面的代碼中,如果只想計(jì)算長方形面積,但要保留計(jì)算對角線長和周長的代碼,則只需將計(jì)算對角線長和周長的代碼注釋即可,代碼如下。

a,b=map(float,input('請輸入長方形兩個(gè)邊的邊長,用英文逗號間隔:').split(','))
s=a*b
# l=(a+b)*2
# d=(a**2+b**2)**(1/2)
# print('長方形的對角線長為:',d)       # 輸出長方形的對角線長
# print('長方形周長為:',l)            # 輸出長方形周長
print('長方形面積為:',s)              # 輸出長方形面積

在上面的代碼中,如果想計(jì)算長方形的面積和周長,則只需將計(jì)算周長的代碼恢復(fù)即可,代碼如下。

a,b=map(float,input('請輸入長方形兩個(gè)邊的邊長,用英文逗號間隔:').split(','))
s=a*b
l=(a+b)*2
# d=(a**2+b**2)**(1/2)
# print('長方形的對角線長為:',d)       # 輸出長方形的對角線長
print('長方形周長為:',l)              # 輸出長方形周長
print('長方形面積為:',s)              # 輸出長方形面積
主站蜘蛛池模板: 平遥县| 武乡县| 左贡县| 衡阳市| 绥化市| 许昌县| 柳州市| 和平县| 东阳市| 扎囊县| 翁牛特旗| 武胜县| 手机| 宁津县| 绥德县| 册亨县| 南昌县| 宁远县| 海南省| 凤山县| 宜宾县| 凤台县| 明光市| 三门县| 平罗县| 旺苍县| 四平市| 响水县| 称多县| 河北省| 惠东县| 哈尔滨市| 贵州省| 荥阳市| 兴化市| 大同市| 徐州市| 洪雅县| 三台县| 右玉县| 洪雅县|