您好,登錄后才能下訂單哦!
默認情況下,Python 源碼文件以?UTF-8?編碼,所有字符串都是 unicode 字符串,可以為Python源碼文件指定不同的編碼,如下:# -*- coding: utf-8 -*-
Python語言的標識符規則如下:
A、第一個字符必須是字母表中字母或下劃線?。
B、標識符的其它的部分由字母、數字和下劃線組成。
C、標識符對大小寫敏感。
在 Python 3 中,允許非 ASCII 標識符。
保留字即關鍵字,不能作為任何標識符名稱。Python 的標準庫提供了一個keyword模塊,可以輸出當前版本的所有關鍵字:
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>>
print輸出默認是換行的,如果要實現不換行需要在變量末尾加上?end=""。
#!/usr/bin/python3
print("Hello Python3")
print("Hello ", end="")
print("Python", end="3\n")
Python中單行注釋以#開頭:
#! /usr/bin/python3
# 第一個注釋
print("Hello Python3") #第二個注釋
Python3中多行注釋用三個單引號?'''?或者三個雙引號?"""?。
#!/usr/bin/python3
'''
第三注釋
第四注釋
'''
"""
第五注釋
第六注釋
"""
print("Hello Python3")
Python最具特色的就是使用縮進來表示代碼塊,不需要使用大括號?{}?。
縮進的空格數是可變的,但同一個代碼塊的語句必須包含相同的縮進空格數,如果縮進不相同會導致運行錯誤。實例如下:
#!/usr/bin/python3
flag = True
if flag:
print("True")
print("true")
else:
print("False")
print("false")
print ("Hello Python3")
Python 通常是一行寫完一條語句,但如果語句很長,可以使用反斜杠()來實現多行語句。
#!/usr/bin/python3
item_one = 1
item_two = 2
item_three = 3
total = item_one + \
item_two + \
item_three
print(total)
在 [], {}, 或 () 中的多行語句,不需要使用反斜杠(),例如
#!/usr/bin/python3
item_one = 1
item_two = 2
item_three = 3
total = item_one + \
item_two + \
item_three
print(total)
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
print(total)
Python 中的變量不需要聲明,每個變量在使用前都必須賦值,變量賦值后才會被創建。
在 Python 中,變量沒有類型,類型是變量所指的內存中對象的類型。
Python允許同時為多個變量賦值。
a = b = c = 1
a, b, c = 1, True, "hello"
x,y = 1,2
x,y = y,x
print(x,y)
Python中變量命名推薦使用匈牙利命名法則。
#!/usr/bin/python3
input("Please enter the name:\n")
上述Python代碼會等待用戶輸入,按回車鍵后退出。
Python中數字有四種類型:整數、布爾型、浮點數和復數。
int?(整數),只有一種整數類型int,表示為長整型。
bool?(布爾),True,False。
float?(浮點數),如 1.23、3E-2
complex(復數),如 1 + 2j、 1.1 + 2.2j
Python中使用單引號和雙引號創建字符串,使用三引號('''或""")可以創建一個多行字符串。
轉義符 '\'
反斜杠可以用來轉義,使用r可以讓反斜杠不發生轉義,如 r"this is a line with \n" 則\n會顯示,并不換行。
字符串可以用+運算符連接在一起,用 * 運算符重復。
Python 中的字符串有兩種索引方式,從左往右以 0 開始,從右往左以 -1 開始。
Python中的字符串不能改變。
Python沒有單獨的字符類型,一個字符就是長度為 1 的字符串。
加(+):兩對象相加
減(-):兩對象相減
乘(*):兩個數相乘或是返回一個被重復若干次的字符串
除(/):x除以y
取模(%):返回除法的余數
冪(**):返回x的y次冪
取整除(//):向下取接近除數的整數
Python3算術運算符的示例代碼:
#!/usr/bin/python3
a = 10
b = 5
c = 0
# +
c = a + b
print("a + b = ", c)
# a + b = 15
a = "Hello"
b = "Python3"
c = a + b
print("a + b = ", c)
#a + b = HelloPython3
# -
a = 10
b = 5
c = a -b
print("a - b = ", c)
# a - b = 5
# *
a = 10
b = 3
c = a * b
print("a * b = ", c)
#a * b = 30
a = "Hello"
b = 3
c = a * b
print("a * b = ", c)
#a * b = HelloHelloHello
# /
a = 10
b = 3
c = a / b
print("a / b = ", c)
#a / b = 3.3333333333333335
# %
a = 10
b = 3
c = a % b
print("a % b = ", c)
#a % b = 1
# **
a = 2
b = 10
c = a ** b
print("a ** b = ", c)
# a ** b = 1024
# //
a = 10
b = 3
c = a // b
print("a // b = ", c)
# a // b = 3
等于(==):比較對象是否相等
不等于(!=):比較對象是否不相等
大于(>):x是否大于y
小于(<):是否x小于y
大于等于(>=):x是否大于等于y
小于等于(<=):x是否小于等于y
Python3關系運算符的示例代碼如下:
#!/usr/bin/python3
a = 21
b = 10
c = 0
if (a == b):
print("a 等于 b")
else:
print("a 不等于 b")
if (a != b):
print("a 不等于 b")
else:
print("a 等于 b")
if (a < b):
print("a 小于 b")
else:
print("a 大于等于 b")
if (a > b):
print("a 大于 b")
else:
print("a 小于等于 b")
if (a <= b):
print("a 小于等于 b")
else:
print("a 大于 b")
if (b >= a):
print("b 大于等于 a")
else:
print("b 小于 a")
對于字符串、列表、元組的比較運算,按照序列的元素進行逐個比較。
a1 = "hello"
a2 = "hello"
print(a1 == a2)
b1 = [1,2,3]
b2 = [1,2,3]
print(b1 == b2)
c1 = (1,2,3)
c2 = (1,2,4)
print(c2 > c1)
賦值(=):簡單賦值運算
加法賦值(+=):c += a等效于c = c + a
減法賦值(-=):c -= a等效于c = c - a
乘法賦值(*=):c *= a等效于c = c * a
除法賦值(/=):c /= a等效于c = c / a
取模賦值(%=):c %= a等效于c = c % a
冪賦值(**=):c **= a等效于c = c ** a
取整除賦值(//=):c //= a 等效于c = c // a
Python3賦值運算符的示例如下:
#!/usr/bin/python3
a = 21
b = 10
c = 0
# =
c = a + b
print("c = ", c)
# c = 31
# +=
a = 10
c = 3
c += a
print("c = ", c)
# c = 13
a = 3
c = 10
# -=
c -= a
print("c = ", c)
# c = 1
# *=
a = 3
c = 5
c *= a
print("c = ", c)
# c = 15
# /=
a = 2
c = 10
c /= a
print("c = ", c)
# c = 5.0
# %=
a = 3
c = 10
c %= a
print("c = ", c)
# c = 1
# **=
a = 10
c = 2
c **= a
print("c = ", c)
# c = 1024
# //=
c = 10
a = 3
c //= a
print("c = ", c)
# c = 3
邏輯與(and):x and y,?如果 x 為 False,x and y 返回 x,否則返回 y 的值。
邏輯或(or):x or y,如果 x 是 True,返回 x 的值,否則返回 y 的值。
邏輯非(not):not x,如果 x 為True,返回False 。如果 x 為 False,返回 True。
Python3邏輯運算符的示例如下:
#!/usr/bin/python3
x = 10
y = 5
# x and y
print(x and y) #5
print(0 and y) #0
# x or y
print(x or y) #10
print(0 or y) #5
# not x
print(not x)
print(not False)
按位與運算符(&):參與運算的兩個值,如果兩個相應位都為1,則該位的結果為1,否則為0。
按位或運算符(|):只要對應的二個二進位有一個為1時,結果位就為1。
按位異或運算符(^):當兩對應的二進位相異時,結果為1。
按位取反(~):對數據的每個二進制位取反,即把1變為0,把0變為1。~x等價于-(x+1)。
左移運算符(<<):運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。
右移運算符(>>):把">>"左邊的運算數的各二進位全部右移若干位,">>"右邊的數指定移動的位數。
Python3位運算符的示例如下:
#!/usr/bin/python3
a = 0b00111100
b = 0b00001101
c = 0
c = a & b;
print("c 的值為:", bin(c)) # 0b1100
c = a | b;
print("c 的值為:", bin(c)) # 0b111101
c = a ^ b;
print("c 的值為:", bin(c)) # 0b110001
c = ~a;
print("c 的值為:", bin(c)) # -0b111101
c = a << 2;
print("c 的值為:", bin(c)) # 0b11110000
c = a >> 2;
print("c 的值為:", bin(c)) # 0b1111
Python支持成員運算符,測試實例中是否包含了一系列的成員,包括字符串,列表或元組。
in:如果在指定的序列中找到值返回 True,否則返回 False。
not in:如果在指定的序列中沒有找到值返回 True,否則返回 False。
Python3成員運算符的示例如下:
#!/usr/bin/python3
a = 1
b = 20
list = [1, 2, 3, 4, 5]
if (a in list):
print("變量a在給定的列表list中")
else:
print("變量a不在給定的列表list中")
if (b not in list):
print("變量b不在給定的列表list中")
else:
print("變量b在給定的列表list中")
Python3身份運算符用于比較兩個對象的存儲單元。
is:x is y,用于判斷兩個標識符是不是引用自一個對象,如果引用的是同一個對象則返回 True,否則返回 False。
is not:x is not y,用于判斷兩個標識符是不是引用自不同對象,如果引用的不是同一個對象則返回結果 True,否則返回 False。
Python3身份運算符的示例如下:
#!/usr/bin/python3
a = 20
b = 20
if (a is b):
print("a和b有相同的標識")
else:
print("a和b沒有相同的標識")
if (a is not b):
print("a和b沒有相同的標識")
else:
print("a和b有相同的標識")
Python中對象類型的判斷使用is×××tance方法進行判斷。
a = "hello"
print(is×××tance(a, str))
Python運算符的優先級從高到低如下:
編碼過程中對于模糊不確定的優先級建議使用加括號顯示確定。
Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
Python中if語句的一般形式如下:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
如果"condition_1"為True將執行"statement_block_1"塊語句。
如果"condition_1"為False,將判斷"condition_2"。
如果"condition_2"為True將執行"statement_block_2"塊語句。
如果 "condition_2" 為False,將執行"statement_block_3"塊語句。
每個條件后使用冒號(:)表示滿足條件后要執行的語句塊。
條件控制中使用縮進來劃分語句塊,相同縮進數的語句在一起組成一個語句塊。
在Python中沒有switch – case語句。
#! /usr/bin/python3
score = int(input("Please enter the score: "))
if score < 60:
print("D")
elif score < 80:
print("C")
elif score < 90:
print("B")
elif score <= 100:
print("A")
在嵌套 if 語句中,可以把 if...elif...else 結構放在另外一個 if...elif...else 結構中。
Python中的循環語句有for和 while。Python中while語句的一般形式如下:
while 判斷條件:
語句
在Python中沒有do..while循環。
#! /usr/bin/python3
N = 100
counter = 1
n = 0
while counter <= N:
n += counter
counter += 1
print("1 到 %d 之和為: %d" % (N, n))
在 while … else 在條件語句為 false 時執行 else 的語句塊.
#! /usr/bin/python3
count = 0
while count < 5:
print("Hello Python3")
count += 1
else:
print("Hello Go")
如果while循環體中只有一條語句,可以將該語句與while寫在同一行中, 如下所示:
#! /usr/bin/python3
flag = 1
while flag: print('Hello Python3')
print("Good bye!")
Python中for循環可以遍歷任何序列的項目,如一個列表或者一個字符串。
for循環的一般格式如下:
for <variable> in <sequence>:
<statements>
else:
<statements>
#! /usr/bin/python3
languages = ["C", "C++", "Perl", "Python"]
for x in languages:
print(x)
for 循環中使用break語句用于跳出當前循環體,不會正常結束for循環,即不執行else分支。
#! /usr/bin/python3
languages = ["C", "C++", "Perl", "Python"]
for x in languages:
if x == "Python":
print(x)
break
print(x)
else:
print("None")
range()內置函數可以用于生成數列。
#! /usr/bin/python3
for x in range(5):
print(x)
# 指定區間
for x in range(5,9):
print(x)
# 指定區間和步長
for x in range(0,10,2):
print(x)
for x in range(-10,-100,-10):
print(x)
a = [1,2,3,4,5,6,7,8]
for i in range(0, len(a), 2):
print(a[i])
b = a[0:len(a):2]
print(b) # [1, 3, 5, 7]
通過seq[0:len(seq):step]可以從seq每隔step步長取一個元素構成新的序列。
Python中pass空語句用于保持程序結構的完整性,pass 不做任何事情,一般用做占位語句。
#! /usr/bin/python3
for x in range(5):
pass
Python不支持switch,通過使用字典可以實現switch,實現方案如下:
A、利用字典取值get方法的容錯性,處理switch語句中的default情況。
B、設置字典的vlaue為對應方法名,來代替switch語句中的代碼塊。
C、為不同key設置相同的value,模擬switch中穿透。
字典實現switch的示例如下:
#!/usr/bin/python3
def taskForRest():
print("Today is easy!")
def taskForWork():
print("Good job!")
def taskForDefault():
print("Invalid input!")
switchDic = {"Sunday":taskForRest,
"Monday":taskForWork,
"Tuesday":taskForWork,
"Wednesday":taskForWork,
"Tursday":taskForWork,
"Friday":taskForWork,
"Saturday":taskForRest
}
monday = "Monday"
switchDic.get(monday,taskForWork())
tuesday = "Tuesday"
switchDic.get(tuesday, taskForWork)()
today = "Today"
switchDic.get(today,taskForDefault())
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。