Python 學習之路(一) 以下所用的是Python 3.6 一、編碼問題 二、基礎知識 2.1 標識符 在 Python 里,標識符由字母、數字、下劃線組成。 在 Python 中,所有標識符可以包括英文、數字以及下劃線(_),但不能以數字開頭。 Python 中的標識符是區分大小寫的。 2.2 ...
Python 學習之路(一)
以下所用的是Python 3.6
一、編碼問題
- 涉及到中文的部分需要使用UTF-8編碼。 使用PyCharm:File->Settings->Editor->File Encoding 在Global Encoding和Project Encoding和Default encoding for properties file 選擇UTF-8編碼。
- 在開頭加上# -*- coding:utf-8 -*- ,指定為UTF-8編碼。
二、基礎知識
2.1 標識符
在 Python 里,標識符由字母、數字、下劃線組成。 在 Python 中,所有標識符可以包括英文、數字以及下劃線(_),但不能以數字開頭。 Python 中的標識符是區分大小寫的。
2.2 腳本編程
- PyCharm直接寫腳本
- 命令行輸入代碼
print("Hello, Python!");
- 可以編寫.py文件,用命令行運行
python HelloWorld.py
2.3 保留字元
所有 Python 的關鍵字只包含小寫字母
and exec not assert finally or break for pass class from print continue global raise def if return del import try elif in while else is with except lambda yield
2.4 行和縮進
Python與其他語言最大的區別就是,Python 的代碼塊不使用大括弧 {} 來控制類,函數以及其他邏輯判斷。python 最具特色的就是用縮進來寫模塊。 縮進的空白數量是可變的,但是所有代碼塊語句必須包含相同的縮進空白數量,這個必須嚴格執行。 這個錯誤就是縮緊導致:IndentationError: unexpected indent
2.5 多行語句
Python語句中一般以新行作為為語句的結束符。 但是我們可以使用斜杠( \)將一行的語句分為多行顯示。 語句中包含 [], {} 或 () 括弧就不需要使用多行連接符。
2.6 引號的使用
Python 可以使用引號( ' )、雙引號( " )、三引號( ''' 或 """ ) 來表示字元串,引號的開始與結束必須的相同類型的。 其中三引號可以由多行組成,編寫多行文本的快捷語法,常用於文檔字元串,在文件的特定地點,被當做註釋。
2.7 註釋語法
單行註釋:在開頭加上#,表示註釋 多行註釋:
''' 這是多行註釋,使用單引號。 這是多行註釋,使用單引號。 這是多行註釋,使用單引號。 '''
2.8 空行語法
空行是程式代碼的一部分,為了方便代碼的維護和構。
2.9 輸入輸出
username = input("username:") print(username)
多行格式化輸出:
info = ''' ------------info %s ----------- name:%s age:%s job:%s ''' % (name,name,age,job) info2 = ''' ------------info {name} ----------- name:{name} age:{age} job:{job} '''.format(name=name, age=age, job=job)
三、變數類型
3.1 基本類型
counter = 100 # 賦值整型變數 miles = 1000.0 # 浮點型 name = "John" # 字元串 a,b,c=100,1000.0,"John"#多變數賦值
3.2 數字類型
數字數據類型用於存儲數值。 他們是不可改變的數據類型,這意味著改變數字數據類型會分配一個新的對象。Python支持四種不同的數字類型: int(有符號整型) long(長整型[也可以代表八進位和十六進位]) float(浮點型) complex(複數)用complex(a,b)
可以使用del 來刪除對象的引用。
del var del var_a, var_b
3.3 字元串
s = "hello world" #或者s = 'hello world' print(s) # 輸出完整字元串 print(s[2:5]) # 輸出字元串中第三個至第五個之間的字元串 print(s * 2) # 輸出字元串兩次 print(s + "TEST") # 輸出連接的字元串
加號(+)是字元串連接運算符,星號(*)是重覆操作。
3.4 列表
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) # 列印組合的列表
3.5 元組
tuple = ('runoob', 786, 2.23, 'john', 70.2) tinytuple = (123, 'john') print(tuple) # 輸出完整元組 print(tuple[0]) # 輸出元組的第一個元素 print(tuple[1:3]) # 輸出第二個至第三個的元素 print(tuple[2:]) # 輸出從第三個開始至列表末尾的所有元素 print(tinytuple * 2) # 輸出元組兩次 print(tuple + tinytuple) # 列印組合的元組
3.6 字典
dict = {} dict['one'] = "This is one" dict[2] = "This is two" tinydict = {'name': 'john', 'code': 6734, 'dept': 'sales'} print(dict['one']) # 輸出鍵為'one' 的值 print(dict[2]) # 輸出鍵為 2 的值 print(tinydict) # 輸出完整的字典 print(tinydict.keys()) # 輸出所有鍵 print(tinydict.values()) # 輸出所有值
3.7 數據類型轉換
函數 | 描述 |
---|---|
int(x [,base]) | 將x轉換為一個整數 |
long(x [,base] ) | 將x轉換為一個長整數 |
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) | 將一個整數轉換為一個八進位字元串 |
四、運算符
Python中的運算符:算術運算符, 比較(關係)運算符, 賦值運算符, 邏輯運算符, 位運算符, 成員運算符, 身份運算符, 運算符優先順序。
4.1 算數運算符
+,-,*,/,%,*(表示冪,a*b,a的b次冪),//()取商,10//4,返回2)
4.2 比較運算符
==,!=,<>,>,<,>=,<=
4.3 賦值運算符
=,+=,-=,*=,/=,%=,**=,//=
4.4 位運算符
& , | , ^(按位異或運算符, ~(按位取反運算符), << , >>
4.5 邏輯運算符
and , or , not
4.6 成員運算符
in(如果在指定的序列中找到值返回 True,否則返回 False。), not in (如果在指定的序列中沒有找到值返回 True,否則返回 False。)
4.7 身份運算符
is(is 是判斷兩個標識符是不是引用自一個對象), is not (is not 是判斷兩個標識符是不是引用自不同對象)
4.8 運算符優先順序
運算順序由優先順序由高到底運行
運算符 | 描述 |
---|---|
** | 指數 (最高優先順序) |
~ + - | 按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法減法 |
>> << | 右移,左移運算符 |
& | 位 'AND' |
^ | | 位運算符 |
<= < > >= | 比較運算符 |
<> == != | 等於運算符 |
= %= /= //= -= += *= **= | 賦值運算符 |
is, is not | 身份運算符 |
in, not in | 成員運算符 |
not, or and | 邏輯運算符 |