標籤:處理 二次 class users python reg 支援 結束 eve
變數命名規則:
- 第一個字元必須是字母表中字母或底線‘_‘。
- 標識符的其他的部分有字母、數字和底線組成。
- 標識符對大小寫敏感。
- 不能是中文
變數命名方式 駝峰式、底線。 在python中一般使用底線方式命名 在Python 3中,非-ASCII 標識符也是允許的了。
以底線開頭的標識符是有特殊意義的。以單底線開頭 _foo 的代表不能直接存取的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入;以雙底線開頭的 __foo 代表類的私人成員;以雙底線開頭和結尾的 __foo__ 代表 Python 裡特殊方法專用的標識,如 __init__() 代表類的建構函式。
Python 保留字元
所有 Python 的關鍵字只包含小寫字母。注意,自從Python2.2起,如果整數發生溢出,Python會自動將整數資料轉換為長整數,所以如今在長整數資料後面不加字母L也不會導致嚴重後果了。注意:在Python3裡不再有long類型了,全都是int
怎麼判斷資料類型:
print(100,type(100)),
print(‘100‘,type(‘100‘)) 字串轉化成數字:int(str) 條件:str必須是數字組成數字轉化成字串:str(int)字串:str,python當中凡使用引號引起來的都是字串。
字串可以相加(拼接)、不能相減、可以與數字相乘(str*int)。bool:布爾值。true、false 單行注釋:#多行注釋:(可以使用3個單引號,或者使用3個雙引號) ‘‘‘
第三注釋
第四注釋
‘‘‘
"""
第五注釋
第六注釋 """代碼塊: 不使用{}大括弧表示。使用縮排表示代碼塊。 縮排的空格數是可變的,但是同一個代碼塊的語句必須包含相同的縮排空格數
if True: print ("True")else: print ("False")
以下代碼最後一行語句縮排數的空格數不一致,會導致運行錯誤:
if True: print ("Answer") print ("True")else: print ("Answer") print ("False") # 縮排不一致,會導致運行錯誤
以上程式由於縮排不一致,執行後會出現類似以下錯誤:
File "test.py", line 6
print ("False") # 縮排不一致,會導致運行錯誤
^IndentationError: unindent does not match any outer indentation level
結束語句不需要分號:冒號後斷行符號會自動縮排tab鍵是有意義的, 不僅僅是代碼縮排,縮排裡面屬於同一個邏輯模組在非邏輯階層的代碼前面不能使用空格,tab鍵。變數不需要指定類型,會自動轉換。python沒有"變數",只有"名字"。變數就是可變的,變數使用之前需要先賦值。
#前後必須使用同樣的單引號或雙引號,必須是英文半形的字元。 print(‘5‘ + "8")
上面的‘5‘ 不可以寫成一個單引號一個雙引號 "5‘ 這是錯誤的
#反斜線可以作為逸出字元串,原始字串在字串前面加上r即可,在結尾不能加反斜線的#跨越多行的字串:三重引號字串(可以是三個單引號或者三個雙引號),把內容放中間,可當成多行注釋使用
print
(
‘c:\\now I\‘am‘
)
print
(
‘‘‘ line1
line3
‘‘‘
)
print
(
"hello\n"
*
3
)
#會列印3次 python 的一個特點是不通過大括弧 {} 來劃定代碼塊
#引入外部模組 import xxx#random模組,randint(開始數,結束數) 產生整數隨機數#異常處理 try except finally 沒有catch函數
Python空行
函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。
空行與代碼縮排不同,空行並不是Python文法的一部分。書寫時不插入空行,Python解譯器運行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。
記住:空行也是程式碼的一部分。同一行顯示多條語句Python可以在同一行中使用多條語句,語句之間使用分號(;)分割 Print 輸出print 預設輸出是換行的,如果要實現不換行需要在變數末尾加上逗號 ,x="a"
y="b"# 換行輸出print x
print y
print ‘---------‘# 不換行輸出print x,print y,
# 不換行輸出print x,y
以上執行個體執行結果為:
a
b
---------
a b a b
擷取命令列參數
import sysprint sys.argv
sys.argv 用來擷取命令列參數
運行命令,執行結果:
./test.py hello[‘./test.py‘, ‘hello‘]
sys.argv[0] 代表檔案本身路徑,所帶參數從 sys.argv[1] 開始
資料類型
變數類型
基於變數的資料類型,解譯器會分配指定記憶體,並決定什麼資料可以被儲存在記憶體中。
因此,變數可以指定不同的資料類型,這些變數可以儲存整數,小數或字元。變數在記憶體中建立,都包括變數的標識,名稱和資料這些資訊。變數在使用前都必須賦值,變數賦值以後該變數才會被建立。
Python有五個標準的資料類型:
- Numbers(數字)
- String(字串)
- List(列表)
- Tuple(元組)
- Dictionary(字典)
數字資料類型用於儲存數值, 是不可改變的資料類型,這意味著改變數字資料類型會分配一個新的對象。使用del語句刪除一些對象的引用
del語句的文法是:
del var1[,var2[,var3[....,varN]]]]
您可以通過使用del語句刪除單個或多個對象的引用。例如:
del vardel var_a, var_b
Python支援四種不同的數字類型:
int(有符號整型)long(長整型[也可以代表八進位和十六進位])===》python3已經沒有long類型了。統一使用intfloat(浮點型)complex(複數)
字串類型,跟java文法相似 List列表,元組,字典 List:可以看成複合資料型別列表裡面的元素可以是不同類型了。用中闊號[ ] 標識,是 python 最通用的複合資料型別list = [ ‘runoob‘, 786 , 2.23, ‘john‘, 70.2 ]tinylist = [123, ‘john‘] print list # 輸出完整列表print list[0] # 輸出資料行表的第一個元素print list[1:3] # 輸出第二個至第三個元素print list[2:] # 輸出從第三個開始至列表末尾的所有元素print tinylist * 2 # 輸出資料行表兩次print list + tinylist # 列印組合的列表
以上執行個體輸出結果:
[‘runoob‘, 786, 2.23, ‘john‘, 70.2]
runoob
[786, 2.23][2.23, ‘john‘, 70.2][123, ‘john‘, 123, ‘john‘][‘runoob‘, 786, 2.23, ‘john‘, 70.2, 123, ‘john‘]
元組是另一個資料類型,類似於List(列表)。
元組用"()"標識。內部元素用逗號隔開。但是元組不能二次賦值,相當於唯讀列表。
列表是有序的對象集合,字典是無序的對象集合。
兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過位移存取。
字典用"{ }"標識。字典由索引(key)和它對應的值value組成。
資料類型轉換資料內建的類型進行轉換,資料類型的轉換,你只需要將資料類型作為函數名即可。這些函數返回一個新的對象,表示轉換的值。
int(x [,base]) |
將x轉換為一個整數,base為進位數,預設為10表示十進位數 |
以下展示了使用 int() 方法的執行個體:
>>>int() # 不傳入參數時,得到結果00>>> int(3)3>>> int(3.6)3>>> int(‘12‘,16) # 如果是帶參數base的話,12要以字串的形式進行輸入,12 為 16進位18>>> int(‘0xa‘,16)10>>> int(‘10‘,8)8
float(x) |
將x轉換到一個浮點數 |
complex(real [,imag]) |
建立一個複數 |
str(x) |
將對象 x 轉換為字串 |
repr(x) |
將對象 x 轉換為運算式字串 |
eval(str) |
用來計算在字串中的有效Python運算式,並返回一個對象 |
tuple(s) |
將序列 s 轉換為一個元組 |
list(s) |
將序列 s 轉換為一個列表 |
set(s) |
轉換為可變集合 |
dict(d) |
建立一個字典。d 必須是一個序列 (key,value)元組。 |
frozenset(s) |
轉換為不可變集合 |
chr(x) |
將一個整數轉換為一個字元 |
unichr(x) |
將一個整數轉換為Unicode字元 |
ord(x) |
將一個字元轉換為它的整數值 |
hex(x) |
將一個整數轉換為一個十六進位字串 |
oct(x) |
將一個整數轉換為一個八進位字串 |
兩個import語義有差異
import datetime
print(datetime.datetime.now())是引入整個datetime包
from datetime import datetimeprint(datetime.now())
from import : 從車裡把礦泉水拿出來,給我import : 把車給我
python基本文法