標籤:空格 int src 可變 dig if...else eric copy abs
目錄:
一.列表、元組
二.字串
三.字典、集合
四.條件判斷與迴圈
一.列表、元組
Python內建的一種資料類型。列表:list,是一種有序的集合,可以隨時添加和刪除其中的元素。
例:
>>>players = [‘Lebron‘, ‘Kobe‘, ‘Kyrie‘]>>>players[‘Lebron‘, ‘Kobe‘, ‘Kyrie‘]
變數players就是一個list。
用len()函數擷取list元素的個數:
>>>len(players)
3
用索引訪問list中每個位置的元素,索引從0開始;擷取最後一個元素可以用-1做索引。
切片:
>>>players = [‘Lebron‘, ‘Kobe‘, ‘Kyrie‘, ‘Dwyane‘]>>>players[1:3] #取下標1-3之間的數,包括1,不包括3[‘Kobe‘, ‘Kyrie‘]>>>players[1:-1] #取下標1至-1的值,不包括-1[‘Kobe‘, ‘Kyrie‘]>>>players[:3] #從頭開始取,0可以忽略[‘Lebron‘, ‘Kobe‘, ‘Kyrie‘]>>>players[2:] #從最後一個開始取[‘Kyrie‘ , ‘Dwyane‘]>>>players[0:0:2] #後面的2代表每隔一個元素取一個[‘Lebron‘, ‘Kyrie‘]>>>players[::2] #和上句效果一樣[‘Lebron‘, ‘Kyrie‘]
追加:
players.append()
插入:
>>>players = [‘Lebron‘, ‘Kobe‘, ‘Kyrie‘, ‘Dwyane‘, ‘Chris‘]>>>players.insert(2, ‘Kevin‘)>>>players[‘Lebron‘, ‘Kobe‘, ‘Kevin‘, ‘Kyrie‘, ‘Dwyane‘, ‘Chris‘]
View Code
修改:
players[2]=‘SC‘
刪除:
>>>del players[2]>>>players.remove(‘Kobe‘) #刪除指定元素>>>players.pop() #刪除列表最後一個值
擴充:
>>>players[‘Lebron‘, ‘Kobe‘, ‘Kyrie‘, ‘Dwyane‘]>>>b = [1, 2, 3]>>>players.extend(b)>>>players[‘Lebron‘, ‘Kobe‘, ‘Kyrie‘, ‘Dwyane‘, 1, 2, 3]
拷貝:
p_copy = players.copy()
後續補充
統計:players.count(‘Lebron‘)
排序:players.sort() #Python3不同類型不能放在一起排序
反轉:players.reverse()
擷取下標:players.index()
元組:一旦建立,不可修改。
players = (‘Lebron‘, ‘Kobe‘, Kyrie‘)
只有兩個方法:count,index
二.字串
方法:
name.capitalize() #首字母大寫
name.casefold() #大寫全部變小寫
name.center(20,"-") #輸出‘----------Lebron----------‘
name.count(‘a‘) #統計a出現的次數
name.encode() #將字串編碼成byte格式
name.endswith("a") #判斷字串是否以a結尾
"Bryce\tYang".expendtabs(10) 輸出‘Bryce Yang‘, 將\t轉換成空格
name.find(‘a‘) #尋找a,找到返回其索引,找不到返回-1
format:
>>>stu = "my name is {}, age is {}"
>>>stu.format("Allen", 18)
‘my name is Allen,age is 18‘
>>>stu = "my name is {1}, age is {0}"
>>>stu.format("Allen", 18)
‘my name is 18, age is Allen‘
>>>stu = "my name is {name}, age is {age}"
>>>stu.format(age=18, name="Allen")
‘my name is Allen,age is 18‘
format_map
>>>stu.format_map({‘name‘: ‘Allen‘, ‘age‘: 18})
‘my name is Allen,age is 18‘
names.isalnum() #字串中是否只包含字母和數字
names.isalpha() #是否只包含字母,漢字
#是否是數字
names.isdecimal()
names.isdigit() #三種的區別
names.isnumeric()
#將字串中的每一個元素按照指定分隔字元進行拼接
test = "EVERYTHING"
v = "_".join(test)
names.lower() #轉為小寫
names.upper() #轉為大寫
names.lstrip() #去除左空白
names.rstrip() #去除右空白
names.strip() #去除左右空白
三.字典、集合
字典使用了鍵-值(key-value)儲存,具有極快的尋找速度。
文法:
>>>d = {‘Michael‘:95, ‘Bob‘:90, ‘Tracy‘:85}>>>d[‘Michael‘]95
和list相比,dict有以下幾個特點:
1.尋找和插入速度極快,不會隨著key的增加而變慢;
2.需要佔用大量的記憶體,記憶體浪費多。
字典中的key是不可變對象,所以字串,整數等都可以作為key,而list是可變的,不能作為key.
字典是無序的
集合(set):
>>>s = set([1,2,3])
>>>s
{1,2,3}
set可以看成數學上的無序和無重複元素的集合,因此,兩個集合可以做數學意義上的交集、並集等操作
四.條件判斷與迴圈
if...else
age = 20if age>18: print(‘your age is‘, age) print(‘adult‘)else: print(‘your age is‘, age) print(‘teenager‘)
elif是else if 的縮寫
if<條件判斷>:
<執行>
elif<條件判斷2>:
<執行>
elif<條件判斷3>:
<執行3>
else:
<執行4>
for迴圈:
names = [‘Michael‘, ‘Bob‘, ‘Tracy‘]for name in names: print(name)
while迴圈:
sum = 0n = 99while n > 0: sum = sum+n n = n-2print(sum)
break提前退出迴圈:
n = 1while n<=100: if n >10: break print(n) n = n+1print(‘END‘)
continue跳過當前迴圈,直接開始下一次迴圈:
n = 0while n<10: n = n+1 if n%2 ==0: continue print(n)
Python學習筆記(二)