1.語法注意點
- 0.注釋:
1.單行注釋: #
2.多行注釋:
''' """
或
''' """
3.不換行輸出
print(index, end=" ")
- 1.dir(builtins):查看所有的BIF組件
- 2.help(input):查看input的具體信息
- 3.字符串:前面加上 r 變成原生字符串,即程序不進行轉義;例如str = r”hello”
- 4 .邏輯與操作符: and or not
- 5.布爾值: True False 首字母是大寫的
- 6.運算符:
Python中:
10/8 = 1.25 10//8 = 1 2 ** 3 = 8 即2的3次方
7.判斷語句: if和 elif: 相當于我們熟悉的 if 和else if
8.三元操作符: demo= x if x > y else y 即: 真 if 條件 else 假
9.for循環:
for demo in arrs
print(demo)
10.arr[1:3]: 返回數組中下標1到3(不包括三)的元素,即只返回arr[1],arr[2]
11.arr * 3:將arr拷貝三份,但并不改變自身
12.分片:
arr =arr2[]: 拷貝arr2到arr里,之后不會隨著arr2改變而改變,直接復制的方法(arr = arr2)會使arr隨著arr2改變而改變
- 13.元組(tuple): 戴上枷鎖的數組(數組元素不可改變):
元組的創建: arr = (1,2,3,4,5,6) #小括號
() (1,) (1,2,3) 1,2,3 以上四種都屬于元組 (1)是int類型
元組添加元素(類似于字符串)
arr = (1,2,3,4)
arr = arr[:2] + (5,) + arr[2:]
結果: arr = (1,2,5,3,4)
t[1:3] # 這里 1:3 是 i>=1 and i<3 的區間
# Tuple 可以轉換成 list, 反之亦然。
轉換方式為:
t = list( t )
反之:
arr = tuple( arr )
- 14.全局變量:
函數內部調用全局變量要聲明:
global count
;
- 15.閉包:
def Fun1(x):
def Fun2(y):
return x * y;
return Fun2;
調用: Fun1(x)(y)
- 16.閉包內全局變量:
def Fun1():
x = 5
def Fun2():
nonlocal x #聲明使用的是外函數的變量
x *= x
return x
return Fun2()
- 17.匿名函數(lambda):
g = lambda x : 2 * x + 1 #冒號前面是參數,后面是語句
相當于:
def g(x):
return 2 * x +1
- 18.遞歸(recursion):
設置最大遞歸次數:
import sys
sys.setrecursionlimit(100000)
- 19.字典(map):
# 創建方式1:
demo = {1:"one", 2:"two", 3:"three"}
# 獲取"two":
demo[2]
# 創建方式2(dict()):
demo = dict((('F',10),('G',20),('H',30))) # 中間一層括號是元組
# 相當于: demo = {'F':10, 'G':20', 'H':30 }
# 創建方式3:
demo = dict(abc='你好', xyz='優秀')
# 相當于: demo = { 'abc':'你好', 'xyz':'優秀'}
# 獲取'你好':
demo['abc']
# 添加一組數據:
demo['ijk']= '當然'
- 20.迭代器(Fibs.py):
1.iter(): __iter__(): 對象調用iter()得到該對象的迭代器
注意: __是兩個下劃線,而不是一個下劃線
2.next(): __next__(): 調用next()迭代器就會返回下一個值:
例:
string = "FishC"
it = iter(string)
next(it) #此處返回'F'
#next()沒有元素時會拋出StopIteration異常
例:循環輸出string:
while true:
try:
each =next(string)
exceptStopIteration:
break
print(each)
# for in循環是靠iter()迭代機制實現的
- 21.生成器(yield): 其實是迭代器的一種實現
例:
def libs():
a = 0
b = 0
while True:
a,b = b,a + b
yield a #返回a并停止
- 22.列表推導式:
例:
a = [i for i in range(100) if not(i%2) and i%3]
#結果: 100以內所有能整出2但不能整除3的數
- 23.字典推導式:
例:
b = { i : i % 2 == 0 for i in range(10) }
結果: 0-10以內所有數字與數字是否為偶數的對應關系的字典:
即: { 0 : True , 1 :False , … , 9 : False }
- 24.集合推導式:
例:
c = { i for i in [ 1 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 3 , 2 , 1 ]}
結果: { 1 , 2 ,3 , 4 , 5 , 6 , 7 , 8 } #不會出現重復的數字
25.元組推導式: 生成的是一組迭代器,可以將數據迭代輸出
26.路徑編碼配置:
在site-packages文件夾里設置sitecumtomize.py文件,并寫入:
import sys
sys.setdefaultencoding(‘gd2312’)
這樣python自動安裝的時候就會加載此文件,設置默認編碼,路徑拼寫路徑過程中就不會出錯
2.類型轉換
- 1.str->int 例:
a='520' b = int(a) 即 b = 520 (str即字符串類型)
- 2.int->str 例:
a = 5.99 b = str(a) 即 b = '5.99'
a = 5e19 b = str(a) 即 b = '5e+19'
3.異常處理
(1).異常類型總結
(2).try-except語句
用法:
try:
檢測范圍
except Exception[asreason]:
出現異常(Exception)后的處理代碼
例1:
try:
Sum = 1 + '1'
f = open('我是一個文件.txt') #此時文件不存在
except OSError as reason:
print('文件出錯啦T_T\n錯誤的原因是' + str(reason))
except TypeError as reason:
print('類型出錯啦T_T\n錯誤的原因是' + str(reason))
例2:
try:
Sum = 1 + '1'
f = open('我是一個文件.txt')
except OSErrorTypeError:
print('出錯啦T_T')
(3).try-finally語句
用法:
try:
檢測范圍
except Exception[asreason]:
出現異常(Exception)后的處理代碼
finally:
無論如何都會被執行的代碼
(4).raise引發一個異常
用法:
raise 異常名稱
raise 異常名稱:提示信息
(5).with語句
用法:
with open('我是一個文件.txt') as f:
for each_line in f:
print(each_line)
# 如果文件存在,with語句會自動調用f.close()
4.模塊!模塊!
- 1.if __name__ == '__main__':
如果是運行程序本身就執行條件后的語句
如果是在外部把此程序當成模塊使用,則不執行條件后的語句
- 2.搜索路徑: 最佳存放路徑: 'C:\python\lib\site-packages'
添加搜索路徑:
import sys
sys.path.append("路徑…")
- 3.包(package):
創建包:
1.創建一個文件夾,用于存放相關的模塊,文件的名字即包的名字
2.在文件夾中創建一個init.py的模塊文件,內容可以為空
3.將相關的模塊放入文件夾中
4.導入: import 報名.模塊名 as 字段
文集推薦:
Java基礎方法集1
Python基礎知識完整版
Spring Boot學習筆記
Linux指令進階
Java高并發編程
SpringMVC基礎知識進階
Mysql基礎知識完整版
健康管理系統學習花絮(學習記錄)
Node.js基礎知識(隨手筆記)
MongoDB基礎知識
Dubbo學習筆記
Vue學習筆記(隨手筆記)
聲明:發表此文是出于傳遞更多信息之目的。若有來源標注錯誤或侵犯了您的合法權益,請作者持權屬證明與本我們(QQ:981086665;郵箱:981086665@qq.com)聯系聯系,我們將及時更正、刪除,謝謝。