昨天雙色球的作業:有些同學不知道雙色球規則,我這里說一下。
規則:一共八個球,六個紅球兩個藍球。紅球范圍1-32,藍球1-16。每個紅球號碼不能重復,每個藍球號碼不能重復。先讓用戶選六個紅球,再選兩個藍球。
red_list = []
blue_list = []
while len(red_list) < 6:
red = int(input("請輸入紅球的號碼:"))
if red > 0 and red < 33:
if red in red_list:
print("此號碼已選擇")
else :
red_list.append(red)
else:
print("對不起,你輸入的號碼超出范圍!")
print(red_list)
while len(blue_list) < 2:
blue = int(input("請輸入藍球的號碼:"))
if blue > 0 and blue < 17:
if blue in blue_list:
print("此號碼已選擇")
else :
blue_list.append(red)
else:
print("對不起,你輸入的號碼超出范圍!")
print(blue_list)
變量(對象)的內存地址:id(變量名)
判斷變量的類型:name = "qqq" type(name) is str #判斷變量是否為str type(name) is not str #判斷是否不是str
None:可以占位用。name = None
三元運算:d = a if a > 15 else b 。當a>15時,d=a,否則d = b
細講列表:增刪改查之前講過,這次加幾個。
1. 合並 n = [ ] names = [ ] names.extend( n ) 將列表 n 追加到列表 names 中。n中的元素追加到names 元素后。追加 追加 追加!
2. 列表的嵌套(列表中的元素還是列表)
age = [222, 333, 444, 555]
names = [12, 23, age, 343]
print(names[2][2])
names = [12, 23, 343]
names.insert(2, [1, 2, 3])
print(names[2][2])
3. 刪除 :del 直接刪、pop 刪除、clear 清空
pop( ) 刪除:默認刪除最后一個元素並返回這個被刪除的元素。 pop(索引)指定刪除
clear()清空。 names.clear()
remove(): 刪除列表從左到右數第一個元素值 names.remove("hell")
4. 查:index() names.index("qwe") 返回從列表左側數第一個為qwe元素的索引值 列表長度(元素個數從一開始計數) len(names)
5. 反轉:names.reverse( )\
6.排序:names.sort() 整形從小到大排序 數字和字符串混合不能排序(2里面好像可以。這里用的py3) 字符串排序,sort()排序規則按着表來。(忘了啥表了,后面用到再說)
列表切片:同時取出列表中多個值 name [start : end] n [1:4] n[1:-2] n[1:] n[ :3] 切片顧頭不顧尾,不包含最后一個索引的元素。除非n[1: ] 冒號后邊空着,代表取從索引1之后的所有值
步長:name [start : end : number] number填寫步長數。步長1,連續切,步長2,跳着切。步長3,4,5……
當步長為-1的時候,列表切片可實現從右往左取值,也可實現列表反轉(反轉的只是切片,原列表沒有反轉)
小練習:1. 通過index()方法,返回相同元素的第二個的索引值
2. 把一個列表通過切片形式反轉 (步數-1)
3. 打印列表所有奇數元素的索引值
names = [12, 23, 343, 34]
n = 0
while n < len(names):
m = names.index(names[n])
if m%2 != 0:
print(m)
n += 1
思考:列表如何去除、找到重復值。如何獲取多個表的重復值
昨天失眠,今天一天不在狀態 T_T