Python學習(1)-基礎語法學習丨【生長吧!Python】
通過Python入門學習,瞭解了Python的現狀和發展史,在經過十幾年的成長,Python已經從2.X到3.X發生了大變化,從學校到職場,已經成了受歡迎的語言。Python2和Python3版本在運算、語法和編碼上有很多區別,兩個版本互不相容。Python2.x版本在2020年已經停止了維護,Python3.x將是現在和未來主流的版本。Python可以應用在人工智慧、資料分析、網站開發、網路爬蟲、自動化運維、軟體測試等方面。
優缺點
優點:語法簡單,強大且數量眾多的工具包和數十萬個第三方的工具庫;是一門面向物件程式設計、動態解釋性語言;並且擴充套件強,支援函數語言程式設計等特點。
缺點:速度慢,偽多執行緒,程式碼沒有太多的強制性操作,書寫規範的要求少,增加維護困難。
直譯器和開發工具
Python環境有直譯器、Anaconda、虛擬環境。指令碼依賴於Python直譯器,一臺電腦上可以安裝多個版本。Anaconda是一種Python整合環境,內建瞭解釋器,還有常用工具庫,程式碼開發工具。可以安裝虛擬環境滿足多個不同版本的專案開發。
Python的開發工具,使用整合開發環境(IDE)可以提高開發效率,常用IDE有:TXT、Pycharm、Jupyter notebook、VScode和Eclipse等。
環境配置
Windows 平臺上安裝 Python:
下載地址:https://www.python.org/downloads/windows/
環境變數配置,開啟CMD視窗,輸入:
path=%path%;C:\Python
注:C:\Python 為安裝路徑
基礎語法
Python指令碼檔案中引入工具包的方法:import module_name(模組名);from .(.package_name) import module_name
識別符號的命名規則:由字母、數字、下劃線組成;不能以數字開頭;區分大小寫
關鍵字:exec、class、print、global、def、import、for、if、while等
行和縮排:同一行中使用多條語句,語句之間使用分號(;)分割;用縮排來寫模組,縮排的空白數量是可變的,所有程式碼塊語句必須包含相同的縮排空白數量,必須嚴格執行
多行語句:使用斜槓(\)將一行的語句分為多行顯示
引號:使用引號(')、雙引號(")、三引號('''或""") 來表示字串,引號的開始與結束必須是相同型別
註釋:單行(# 這是註釋內容); 多行(單引或雙引 ''' 這是多行註釋內容 ''' )
print輸出:預設輸出是換行的,如果要實現不換行需要在變數末尾加上逗號(,)
資料型別
Python提供了六種內建資料型別,有Number、String、List、Tuple、Dictionary、Set;資料型別分類包含有序、無序、可變和不可變。
1.數值型別
整型(int)、浮點(float)、長整型(long integers)、複數(complex),不同型別數字運算結果為精度較高的型別。
var1 = 1 # 定義變數賦值
del var1 # 刪除物件
型別轉換:int(x [,base ]),long(x [,base ]),float(x ),str(x ),eval(str )等。
計算函式:abs,round,divmod,max,min,sum等。
隨機數函式:choice,random,seed,randrange等。
math 模組:提供數學運算函式(三角函式,絕對值,階乘等)。
2.字元和字串
宣告字串的方式有單引、雙引和三引號;三引號字串可以換行
var1 = 'Hello World!' # 單行
var2 = '''Hello
World!''' # 多行
字串運算子:+(連線字串),*(重複輸出字串),[](通過索引獲取字串中字元),[ : ](擷取字串中的一部分),%(格式字串)。
字串長度:使用 len 函式檢視。
字串其它常用函式:split,replace,lower,upper,join等。
3.元祖
元組的元素不能修改;元組使用小括號,在括號中新增元素,並使用逗號隔開。
# 空元祖
tup1 = ()
# 建立元祖
tup1 = ('hello', 'world', 2021)
# 訪問元祖
print "tup1[0]: ", tup1[0]
print "tup1[1:2]: ", tup1[1:2]
# 修改元祖(無法修改,可以連線組合)
tup2 = ('abc', 'xyz')
tup3 = tup1 + tup2 # 建立一個新的元組
# 刪除元祖
del tup
元祖運算子:+(連線),*(複製),len(計算元素個數),in(元素是否存在),for x in (1,2,3)(迭代)
元祖內建函式:cmp(比較),max(返回最大值),min(返回最小值),tuple(列表轉換為元組)
4.列表
列表是有序可變的序列,元素可以是任意物件;建立列表用逗號分隔的不同的資料項使用方括號括起即可。
# 空列表
list = []
# 定義列表
list1 = ["a", "b", "c", "d"]
# 訪問列表
print "list1[0]: ", list1[0]
print "list1[1:3]: ", list1[1:3]
# 更新列表
list.append('test') # 新增元素
# 刪除列表元素
del list1[3]
列表操作符:+(連線組合),*(複製),len(計算元素個數),in(元素是否存在),for x in (1,2,3)(迭代)
列表內建函式:cmp(比較),max(返回最大值),min(返回最小值),list(元組轉換為列表)等
列表內建方法:append(末尾新增),count(統計元素次數),insert(插入),pop(移除),reverse(反向列表中元素),sort(排序)等
5.字典
字典元素是由鍵和值組成,是無序可變的序列,由花括號包裹,元素逗號隔開。
# 定義語法
var1 = {key1 : value1, key2 : value2 }
# 定義字典
dict = {'a': 1, 'b': 2, 'b': '3'}
# 訪問字典
print "dict['a']: ", dict['a']
# 修改字典
dict['a'] = 6 # 更新
dict['c'] = "18" # 新增
# 刪除
del dict['c'] # 刪除鍵是'c'的條目
dict.clear() # 清空字典所有條目
del dict # 刪除字典
字典內建函式:cmp(比較字典元素),len(計算字典元素個數),str(輸出字典可列印的字串),type(返回輸入的變數型別)等
字典內建方法:clear(刪除所有),copy(淺複製),keys(返回所有的鍵),items(返回可遍歷的(鍵, 值) 元組陣列),values(返回所有值),pop(刪除字典給定鍵 key 所對應的值)等
6.集合
集合是一個無序的不重複元素序列,元素是唯一的,重複元素會被刪除;可以使用大括號{ }或者set()函式建立集合。
# 建立語法
var1= {value1,value2,...}
var1= set(value1)
# 集合
fruit = {'apple', 'orange', 'pear',}
# 新增元素
fruit .add("banana")
fruit.update({'orange',3})
# 移除元素
fruit.remove('orange')
fruit.discard('orange')
fruit.pop() #隨機刪除一個
# 計算個數
len(fruit)
# 清空集合
fruit.clear()
#判斷元素是否在集合中存在
"orange" in thisset
集合內建方法:add(新增元素),clear(刪除所有),copy(拷貝),difference(返回多個集合的差集),discard(刪除指定的元素),pop(隨機移除),remove(移除指定),union(返回兩個集合的並集),update(給集合新增元素)等。
【生長吧!Python】有獎徵文火熱進行中:https://bbs.huaweicloud.com/blogs/278897