Python學習六 學習列表後,作業

2021-10-09 17:42:44 字數 4810 閱讀 6282

現在有 a = [1,2,3,4,5,6] 不通過函式的形式實現列表的反轉([6,5,4,3,2,1]) 並寫出推導過程

a =[1

,2,3

,4,5

,6]reverse_a =

for i in a:

reverse_a.insert(

0, i)

# 將遍歷的元素一直插入到空列表的index 0號位置

print

(reverse_a)

print>>>[6, 5, 4, 3, 2, 1]

給使用者9次機會猜1 - 10 個數字隨機來猜數字。如果隨機的數字和使用者輸入的數字一致則表示正確,如果不一致則表示錯誤。最終結果要求使用者怎麼也猜不對

# 給 使用者9次機會 猜1 - 10 個數字隨機來猜數字。如果隨機的數字和使用者輸入的數字一致則表示正確,如果不一致則表示錯誤。最終結果要求使用者怎麼也猜不對

"""1. 使用者先輸入乙個數字,有個值來記錄使用者輸入的次數

2. 將使用者輸入的數字,從 1-10的列表中刪除,然後再從刪除的列表來隨機抽取數字,進行比較判斷

"""import random

i =1

jishu =

list

(range(1

,11))

caiguo =

while

true

: swho_pr =

input

("你來猜1-10之間的數字,共有9次機會!,你還有 %d次機會:"%(

10-i))if

not swho_pr.isdigit():

print

('認數嗎?請輸1-10的數字!否則扣你一次機會'

)# continue

elif i <9:

who_pr =

int(swho_pr)

if who_pr <

1or who_pr >10:

print

("你輸入了1-10以外的值,請重新輸入!9次機會還未使用!"

)else

:if who_pr in caiguo:

print

('你已猜過這個數字,不要浪費你的機會,趕快重猜!'

)else

:print

('你輸入的數字是 %d ,沒猜中哦,你已經使用了 %d 次機會!'

%(who_pr, i)

) jishu.remove(who_pr)

# 將猜的值方到列表裡,防止重複輸入驗證

suiji = random.choice(jishu)

# 已經將使用者輸入的值剔除掉的隨機列表,抽乙個值給使用者看

# print(jishu, suiji, caiguo)

i +=

1else

: jishu.remove(

int(swho_pr)

)print

('給你9次機會都猜不出來,告訴你吧,正確的數字是%d'

% jishu[0]

)break

print

你來猜1-10之間的數字,共有9次機會!,你還有 9次機會:sdf

認數嗎?請輸1-10的數字!否則扣你一次機會

你來猜1-10之間的數字,共有9次機會!,你還有 9次機會:111

你輸入了1-10以外的值,請重新輸入!9次機會還未使用!

你來猜1-10之間的數字,共有9次機會!,你還有 9次機會:1

你輸入的數字是 1 ,沒猜中哦,你已經使用了 1 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 8次機會:1

你已猜過這個數字,不要浪費你的機會,趕快重猜!

你來猜1-10之間的數字,共有9次機會!,你還有 8次機會:2

你輸入的數字是 2 ,沒猜中哦,你已經使用了 2 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 7次機會:2

你已猜過這個數字,不要浪費你的機會,趕快重猜!

你來猜1-10之間的數字,共有9次機會!,你還有 7次機會:3

你輸入的數字是 3 ,沒猜中哦,你已經使用了 3 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 6次機會:4

你輸入的數字是 4 ,沒猜中哦,你已經使用了 4 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 5次機會:5

你輸入的數字是 5 ,沒猜中哦,你已經使用了 5 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 4次機會:6

你輸入的數字是 6 ,沒猜中哦,你已經使用了 6 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 3次機會:7

你輸入的數字是 7 ,沒猜中哦,你已經使用了 7 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 2次機會:8

你輸入的數字是 8 ,沒猜中哦,你已經使用了 8 次機會!

你來猜1-10之間的數字,共有9次機會!,你還有 1次機會:10

給你9次機會都猜不出來,告訴你吧,正確的數字是9

有兩個列表 lst1 = [11, 22, 33] lst2 = [22, 33, 44]獲取內容相同的元素

list1 =[11

,22,33

,44]list2 =[22

,33,44

]list3 =

# 空的列表用來儲存相同內容

# i1 = len(list1)

# j = 0

# while j < i1:

# if list1[j] in list2:

# list3.extend([list1[j]])

# j += 1

for i in list1:

if i in list2:

list3.extend(

[i])

print

(list3)

print : [22, [33, 44]]

現在有8位老師,3個辦公室,要求將8位老師隨機的分配到三個辦公室中,要求每個辦公室至少有乙個老師

import random

# 定義8個老師的雙階列表,包含的是老師和即將賦值的教室

eight_teacher =[[

'a','']

,['b','']

,['c','']

,['d','']

,['e','']

,['f','']

,['g','']

,['h','']

]class_random =

# 定義空的教室,將老師去的教室列舉出來,統一錄入

class_1 =

# 1號教室

class_2 =

# 2號教室

class_3 =

# 3號教室

while

true

:for room in eight_teacher:

# 遍歷8個老師的雙階列表

room[1]

= random.randint(1,

3)# 1,2,3號教室隨機分配給8個老師1]

)# 將8個老師分配的教室放入class_random列表

c1 = class_random.count(1)

# 統計1號教室出現的次數

c2 = class_random.count(2)

# 統計2號教室出現的次數

c3 = class_random.count(3)

# 統計3號教室出現的次數

if c1 !=

0and c2 !=

0and c3 !=0:

# 3個教室都有老師的情況下

for bianli in eight_teacher:

# 遍歷所有老師

if bianli[1]

==1:# 教室是1號的老師都統計進單獨列表0]

)elif bianli[1]

==2:# 教室是2號的老師都統計進單獨列表0]

)else

:# 教室是3號的老師都統計進單獨列表0]

)break

# 跳出迴圈準備列印

else

:continue

# 如教室有空,則重新分配老師

print

('1號教室有%d個老師,2號教室有%d個老師,3號教室有%d個老師'

%(c1, c2, c3)

)print

('1號教室的老師是以下幾位:'

,'|'

,'|'

.join(class_1)

,'|'

)print

('2號教室的老師是以下幾位:'

,'|'

,'|'

.join(class_2)

,'|'

)print

('3號教室的老師是以下幾位:'

,'|'

,'|'

.join(class_3)

,'|'

)

print:

1號教室有3個老師,2號教室有1個老師,3號教室有4個老師

1號教室的老師是以下幾位: | a|b|d |

2號教室的老師是以下幾位: | g |

3號教室的老師是以下幾位: | c|e|f|h |

python列表學習 python列表學習整理

list1 列表 是一種有序的集合,可以隨時新增和刪除其中的元素。list1 lily lucy peter abel 列印列表 print list1 遍歷列表 end 迴圈中不換行print x,end for x in list1 print x 列表個數 print len list1 列表...

python列表學習 Python列表學習

python中的列表表示 python中的列表相當於oc中的陣列,它們都會有增刪改查的方法,這裡就將這兩種語言中的列表和陣列進行對比學習。首先先來寫組oc中的陣列的表達方式 nsarray namesarr nsarray arraywithobjects,zhang wang li zhao 這就...

Python學習 Python基礎 六 列表

2 列表 list 3 通用操作 4 修改列表 5 列表的方法 6 遍歷列表 從未接觸過 和論壇部落格的超級小白一枚,最近在學習python,把從頭開始學到的東西都記錄在這裡,當做自己的成長記錄,希望可以慢慢成長起來!加油!v 步長表示每次獲取元素的間隔,預設是1 可以省略不寫 步長不能是0,但可以...