字符串處理
單雙引號一樣
.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')