python筆記(一)
- 2020 年 1 月 14 日
- 筆記
字符串處理 單雙引號一樣 .title():將每個單詞的首字母變為大寫,其餘小寫(不管原來是什麼樣) .upper():將字符串中所有字母變為大寫 .lower():將字符串中所有字母變為小寫 .strip():刪除行首和行末的空白(空格和製表符)(直接輸入變量返回值才能看到,否則看不到效果) .lstrip():刪除左邊,即行首 .rstrip():刪除友邊,即行末 合併字符串直接用加號:+ 轉義(不管單雙引號都生效): t:製表符 n:換行
字符串反轉: a="abcdef" a[::-1]:「fedcba」
變量類型轉換 整型或其他 –> 字符串:str(變量)
注釋 #:單行注釋 """ """:多行注釋
列表 賦值:VAR=["aa","bb"] 可以先創建空列表 返回最後一個:VAR[-1] 在末尾添加:.append("aaa") 在任意位置添加:.insert(索引位置,"ccc") 刪除:del VAR[索引位置](後邊的索引會頂替刪除的索引) .remove(值):根據值刪除,只刪除一次就停止,如果刪除多個同樣的值需要用循環判斷是否刪除乾淨 彈出列表中最後一個元素:.pop()(彈出的元素可使用,但是不會在列表中存在了) 刪除和彈出的區別:刪除之後不可使用,彈出能夠使用這個彈出的元素
排序: .sort():對列表永久性排序(按照首字母) 反向排序,傳遞參數:.sort(reverse=True) sorted(列表):臨時排序,返回排序好的列表,但是對原來的列表無影響 臨時反向排序:sorted(列表,reverse=True) 倒着打印列表:.reverse() 反轉列表:reverse(列表) 獲取列表長度:len(列表) 遍歷列表:for i in 列表: 最好的命名方式,列表取複數,遍歷變量取單數,即: for cat in cats: 創建數字列表: range():生成一串數字 range(1,6):生成1到5(沒有6) range(2,11,2):跳着生成 在生成一串數字之後,使用list()將其轉換成列表: list(range(1,6)) 上面的可以簡寫為一行:squares = [value**2 for value in range(1,11)] 找極值: min(digits):最小值 max(digits):最大值 sum(digits):求和 列表切片: 列表[1:4] :打印從1開始到4的前邊3 列表[:4] :如果不寫起始則從頭開始 列表[1:] :如果不寫結束則一直到末尾 列表[-5:] :打印出最後5個元素 列表切片可用於遍歷一部分列表 複製列表: 列表2=列表1[:](可以指定複製的範圍) 後頭必須有方括號,否則是兩個名字指向同一個列表,不是複製
元組:不可修改的列表(使用方法同列表) 元組=(200,50) print(元組[0])
不能單獨修改一個元素的值,但是可以整體賦值: dimensions = (200, 50) dimensions = (400, 100)
編程標準: 縮進為四個空格 一行最長最好不超過80個字符 空行不要濫用
if語句 if VAR1=VAR2: COMMAND else: COMMAND
或者寫成: VAR1 == VAR2
在判斷時區分大小寫,如果VAR1位大寫,VAR2為小寫,則if返回值為FALSE 如果不想區分大小寫,可以先使用「.lower()」都轉換為小寫再比,而且不會影響原來變量中的內容 比較符號: 等於:== 不等於:!= 大小(等)於:>、<、<=、>= 條件與:and(and兩邊要有空格,和變量分開)(and兩邊的潘丹條件可使用小括號包裹起來) 條件或:or 判斷一個特定的值是否在列表中:in 'value' in lists 不包含 not in 布爾值:True、False(大小寫固定,必須首字母大寫)
if格式:(elif和else部分都可以省略) if age < 4: print("Your admission cost is $0.") elif age < 18: print("Your admission cost is $5.") else: print("Your admission cost is $10.")
使用實例:(判斷是否在列表中) requested_toppings = ['mushrooms', 'extra cheese'] if 'mushrooms' in requested_toppings: print("Adding mushrooms.") if 'pepperoni' in requested_toppings: print("Adding pepperoni.") if 'extra cheese' in requested_toppings: print("Adding extra cheese.")
if lists:(判斷列表是否為空)
字典(沒有順序,只關心鍵值對的關聯關係) 賦值: alien_0 = {}(創建空字典) alien_0 = {'color': 'green', 'points': 5} (批量賦值) alien_0['x_position'] = 0 (離散賦值) 使用: print(alien_0['color'])(打印單個) print(alien_0) (打印全部)
刪除: del alien_0['points'] 遍歷字典: user_0 = { 'username': 'efermi', 'first': 'enrico', 'last': 'fermi', } for key, value in user_0.items(): (使用items函數遍歷鍵值對) (如果沒使用items函數,且只有一個變量的情況下輸出的是索引) for i in lists.keys(): (遍歷索引) for i in lists.values():(遍歷值) (key和value這兩個單詞可以自己任意起) 字典無序,對其排序: for name in sorted(favorite_languages.keys()): 剔除重複: for language in set(favorite_languages.values()): 字典嵌套: 將一系列字典存儲在列表中,或將列表作為值存儲在字典中,這稱為嵌套。你可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典 alien_0 = {'color': 'green', 'points': 5} alien_1 = {'color': 'yellow', 'points': 10} alien_2 = {'color': 'red', 'points': 15} aliens = [alien_0, alien_1, alien_2] for alien in aliens: print(alien) 輸出結果: {'color': 'green', 'points': 5} {'color': 'yellow', 'points': 10} {'color': 'red', 'points': 15} 動態創建字典保存在列表中: aliens = [] for alien_number in range(30): new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'} aliens.append(new_alien) 然後可以通過遍歷列表來修改字典中的內容 列表保存在字典中: favorite_languages = { 'jen': ['python', 'ruby'], 'sarah': ['c'], 'edward': ['ruby', 'go'], 'phil': ['python', 'haskell'], } for name, languages in favorite_languages.items(): print("n" + name.title() + "'s favorite languages are:") for language in languages:(循環中包含循環) print("t" + language.title()) 字典中保存字典:(最好每個子字典中所包含的值都一樣,這樣方便管理) users = { 'aeinstein': { 'first': 'albert', 'last': 'einstein', 'location': 'princeton', }, 'mcurie': { 'first': 'marie', 'last': 'curie', 'location': 'paris', }, }
輸入: VAR_STR=input("這裡寫一些提示信息")(這是python3,在python2中使用raw_input) 有時候提示是信息超過一行,可以使用變量來存儲(n是換行) VAR_INT=int(VAR_STR)(將字符串類型轉換成整型)
while循環: while 判斷條件:(可以是True或False(首字母大寫)) continue break while和列表搭配: while lists:(當列表空時結束) lists.pop()(使用pop函數輸出,或者使用remove,不然死循環) pop:彈出列表中最後一個元素 remove:刪除列表中的值,但只刪第一個,後頭再有重複的不管,當想要刪除列表中多個重複的值時,使用while來進行刪除 while 'cat' in pets: pets.remove('cat')