1. 程式人生 > >第2章: Python語言基本語法元素

第2章: Python語言基本語法元素

目錄

考綱考點

知識導圖

1、程式的格式框架

縮排

註釋

2、語法元素的名稱

變數

命名

保留字

3、資料型別

資料型別概述

數字型別

字串

4、程式的語句元素

表示式

賦值語句

其他語句

分支語句

迴圈語句

5、基本輸入輸出函式

input()函式

eval() 函式

print()函式

6、例項解析:倒背如流

例項解析

本章小結


考綱考點

  • 程式的基本語法元素:程式的格式框架、縮排、註釋、變數、命名、保留字、資料型別、賦值語句、引用
  • 基本輸入輸出函式:input()、eval()、print()
  • 源程式的書寫風格

知識導圖

1、程式的格式框架

縮排

  • Python語言採用嚴格的“縮排”來表明程式的格式框架。縮排指每一行程式碼開始前的空白區域,用來表示程式碼之間的包含和層次關係。
  • 1個縮排 = 4個空格
  • 縮排是Python語言中表明程式框架的唯一手段
  • 當表達分支、迴圈、函式、類等程式含義時,在if、while、for、def、class等保留字所在完整語句後通過英文冒號(:)結尾並在之後進行縮排,表明後續程式碼與緊鄰無縮排語句的所屬關係。

註釋

  • 註釋是程式碼中的輔助性文字,會被編譯或直譯器略去,不被計算機執行,一般用於程式設計師對程式碼的說明。Python語言採用#表示一行註釋的開始,多行註釋需要在每行開始都使用#。
  1. #註釋的第一行
  2. #註釋的第二行
  3. #註釋的第三行
  • Python程式中的非註釋語句將按順序執行,註釋語句將被直譯器過濾掉,不被執行。註釋一般用於在程式碼中標明作者和版權資訊,或解釋程式碼原理及用途,或通過註釋單行程式碼輔助程式除錯。

2、語法元素的名稱

變數

  • 變數是儲存和表示資料值的一種語法元素,在程式中十分常見。顧名思義,變數的值是可以改變的,能夠通過賦值(使用等號=表達)方式被修改,例如:
>>> a = 99
>>> a = a + 1
>>> print(a)
100

命名

  • Python語言允許採用大寫字母、小寫字母、數字、下劃線(_)和漢字等字元及其組合給變數命名,但名字的首字元不能是數字,中間不能出現空格,長度沒有限制
  • 注意:識別符號對大小寫敏感,python和Python是兩個不同的名字

保留字

  • 保留字,也稱為關鍵字,指被程式語言內部定義並保留使用的識別符號。
  • 程式設計師編寫程式不能定義與保留字相同的識別符號。
  • 每種程式設計語言都有一套保留字,保留字一般用來構成程式整體框架、表達關鍵值和具有結構性的複雜語義等。
  • 掌握一門程式語言首先要熟記其所對應的保留字。

Python 3.x保留字列表 (33個)

and

elif

import

raise

as

else

in

return

assert

except

is

try

break

finally

lambda

while

class

for

nonlocal

with

continue

from

not

yield

def

global

or

True

del

if

pass

False

 

 

 

None

3、資料型別

資料型別概述

  • Python語言支援多種資料型別,最簡單的包括數字型別、字串型別,略微複雜的包括元組型別、集合型別、列表型別、字典型別等。

數字型別

  • 表示數字或數值的資料型別稱為數字型別,Python語言提供3種數字型別:整數、浮點數和複數,分別對應數學中的整數、實數和複數。
  • 一個整數值可以表示為十進位制、十六進位制、八進位制和二進位制等不同進位制形式。

十進位制: 1010

十六進位制:0x3F2

八進位制: 0o1762

二進位制: 0b001111110010

  • 一個浮點數可以表示為帶有小數點的一般形式,也可以採用科學計數法表示。例如:浮點數123.456,兩種表示方式如下:

一般形式: 123.456

科學計數法: 1.23456e2

  • 複數型別與數學中的複數相一致,採用a+bj的形式表示,存在實部和虛部。

字串

  • Python語言中,字串是用兩個雙引號“ ”或者單引號‘ ’括起來的一個或多個字元。
  • Python字串的兩種序號體系

  • 如果字串長度為L,正向遞增需要以最左側字元序號為0,向右依次遞增,最右側字元序號為L-1;反向遞減序號以最右側字元序號為-1,向左依次遞減,最左側字元序號為-L。
>>> "對酒當歌,人生幾何?"[1]
'酒'
>>> "對酒當歌,人生幾何?"[-1]
'?'
  • 可以採用[N: M]格式獲取字串的子串,這個操作被形象地稱為切片。[N: M]獲取字串中從N到M(但不包含M)間連續的子字串。
>>> "對酒當歌,人生幾何?"[2:4]
'當歌'
>>> "對酒當歌,人生幾何?"[5:-2]
'人生幾'
  • 可以通過Python預設提供的len()函式獲取字串的長度,一箇中文字元和西文字元的長度都記為1。
>>> len("對酒當歌,人生幾何?")
10
>>> len("Hello World")

4、程式的語句元素

表示式

  • 產生或計算新資料值的程式碼片段稱為表示式。表示式類似數學中的計算公式,以表達單一功能為目的,運算後產生運算結果,運算結果的型別由操作符或運算子決定。
  • 表示式一般由資料和操作符等構成,這是構成Python語句的重要部分。

賦值語句

  • Python語言中,= 表示“賦值”,即將等號右側的值計算後將結果值賦給左側變數,包含等號(=)的語句稱為“賦值語句”

<變數> = <表示式>

  • 同步賦值語句:同時給多個變數賦值

<變數1>, …, <變數N> = <表示式1>, …, <表示式N>

  • 例:將變數x和y交換
  • 採用單個賦值,需要3行語句:
  • 即通過一個臨時變數t快取x的原始值,然後將y值賦給x,再將x的原始值通過t賦值給y。
  • 採用同步賦值語句,僅需要一行程式碼:

  • 引用
  • Python程式會經常使用當前程式之外已有的功能程式碼,這個過程叫“引用”。Python語言使用import保留字引用當前程式以外的功能庫,使用方式如下:

import <功能庫名稱>

  • 引用功能庫之後,採用<功能庫名稱>.<函式名稱>()方式呼叫具體功能。
# 呼叫turtle庫進行繪圖操作
import turtle
>>> turtle.fd(-200)    #fd()是turtle庫中函式
>>> turtle.right(90)   #right()是turtle庫中函式
>>> turtle.circle(200) #circle()是turtle庫中函式

其他語句

  • 除了賦值語句外,Python程式還包括一些其他的語句型別,例如,分支語句迴圈語句等。更多的分支和迴圈內容將在第4章介紹。這裡僅簡要介紹這兩類語句的基本使用。

分支語句

  • 分支語句是控制程式執行的一種語句,它的作用是根據判斷條件選擇程式執行路徑。分支語句包括:單分支、二分支和多分支。
  • 單分支語句是最簡單的分支語句,使用方式如下:

if <條件>:

      <語句塊>

# 判斷輸入整數是否在[0,100]之間
num = eval(input("請輸入一個整數:"))
if 0 <= num <= 100: # 判斷[0,100]
    print("輸入整數在0到100之間(含)")

迴圈語句

  • 迴圈語句是控制程式執行的一類重要語句,與分支語句控制程式執行類似,它的作用是根據判斷條件確定一段程式是否再次執行一次或者多次。迴圈語句包括遍歷迴圈和條件迴圈。

while (<條件>):

      <語句塊1>

      <語句塊2>

# 輸出10到100步長為3的全部整數
n = 10
while n < 100:
    print(n, end=" ")
    n = n + 3

5、基本輸入輸出函式

input()函式

  • 獲得使用者輸入之前,input()函式可以包含一些提示性文字

<變數> = input(<提示性文字>)

>>>a = input("請輸入一個小數: ")
請輸入一個小數: 123.456
>>>print(a) # 此時a是字串"123.456"
123.456

eval() 函式

  • eval(<字串>)函式是Python語言中一個十分重要的函式,它能夠以Python表示式的方式解析並執行字串,將返回結果輸出
>>>a = eval("1.2 + 3.4")
>>>print(a)
4.6
  • eval()函式經常和input()函式一起使用,用來獲取使用者輸入的數字,使用方式如下:

<變數> = eval(input(<提示性文字>))

>>>value = eval(input("請輸入要計算的數值: ")) 請輸入要計算的數值: 1024.256 >>>print(value*2)
2047.512

print()函式

  • print()函式用於輸出運算結果,根據輸出內容的不同,有三種用法。
  • 第一種,僅用於輸出字串,使用方式如下:

print(<待輸出字串>)

>>> print("你好,來自江南的你")
你好,來自江南的你
  • 第二種,僅用於輸出一個或多個變數,使用方式如下:

print(<變數1>, <變數2>,…, <變數n>)

>>>value = 123.456
>>>print(value, value, value)
123.456 123.456 123.456
  • 第三種,用於混合輸出字串與變數值,使用方式如下:

print(<輸出字串模板>.format(<變數1>, <變數2>,…, <變數n>))

>>>a, b = 123.456, 1024
>>>print("數字{}和數字{}的乘積是{}".format(a, b, a*b))
數字123.456和數字1024的乘積是126417.944
  • 對print()函式的end引數進行賦值

print(<待輸出內容>, end="<增加的輸出結尾>")

>>>a = 24
>>>print(a, end=".")
24.
>>>print(a, end="%")
24%

6、例項解析:倒背如流

例項解析

  • 計算機程式是機械記憶的高手,下面將編寫一段程式,獲得使用者輸入,採用倒敘方式將輸入內容輸出出來。該程式的輸入和輸出例項如下:
  • 輸入:To be or not to be, that’s a question. ——莎士比亞
  • 輸出:亞比士莎—— .noitseuq a s’taht ,eb ot tonro eb oT
  • 以下給出了一種實現,採用正向遞增序號,利用len()函式將i設為最後一個字元的索引序號,然後逐次輸出至第一個字元。
s = input("請輸入一段文字:")
i = len(s) - 1
while i >= 0 :
    print(s[i], end="")
    i = i - 1
  • 給出另一種實現,採用反向遞減序號,將i首先設定為-1,直接索引最後一個字元,然後逐次輸出至第一個字元。
s = input("請輸入一段文字:")
i = -1
while i >= -1 * len(s):
    print(s[i], end="")
    i = i - 1

本章小結

本章具體講解了初學Python需要知道的一些基本概念,初步介紹了Python基本語法元素,講解了程式的格式框架、語法元素的名稱、資料型別、程式的語句元素、基本輸入輸出函式等內容,進一步給出了Python源程式書寫風格的思考和建議,幫助讀者初步建立編寫優美程式
的基本觀念。最後,講解了“倒背如流”例項,通過完成將一段輸入文字倒序輸出的功能理解並實踐Python基本語法元素。

Python程式說它可以倒背如流,人類的你要不要默寫一下保留字來試試?