零基礎學習Python 作業 第9章

2021-08-16 07:02:25 字數 4579 閱讀 3015

**********ch09 homework**********

0 下面的迴圈會列印多少次」i love fishc」?

for i in range(0, 10, 2):

print('i love fishc?')

answer: 5 次

1 下面的迴圈會列印多少次」i love fishc」?

1.

for i in

5:2.

print('i love fishc')

answer: error, in 是成員資格運算子, 5 不能迭代

typeerror: 『int』 object is not iterable

2 回顧一下 break 和 continue 在迴圈中起到的作用?

answer: break, 如果滿足條件,則終止迴圈

continue, 如果滿足條件,則跳出,重新開始迴圈

3 請談下你對列表的理解?

answer: list 類似於矩陣,但又有點不同,有點類似matlab中的cell

4 請問 range(10) 生成哪些數?

answer: range(10) == range(0, 10, 1) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

5 目測以下程式會列印什麼?

1.

while

true:

2.while

true:

3.break

4.print(1)

5.print(2)

6.break

7.print(3)

answer: 2 3

6 什麼情況下我們要使迴圈永遠為真?

answer: 比如時間鐘錶,或者固定的週期應用,或者固定模式(確保一直在,如***那個遊戲)的遊戲

7 【學會提高**的效率】你的覺得以下**效率方面怎樣?

有沒有辦法可以大幅度改進(仍然使用while)?

1.

i = 0

2. string = 'ilovefishc.com'

3.while

i< len(string)):

4. print(i)

5.i += 1

answer: 這裡每一次都要len(string),我們將len(string)預先存好。

code:

i = 0

string = 'ilovefishc.com'

length = len(string)

while

i< length:

print(i)

i += 1

0 設計乙個驗證使用者密碼程式,

使用者只有三次機會輸入錯誤,不過如果使用者輸入的內容中包含"*"則不計算在內

code:

print('*****===密碼校驗系統*****===')

count = 3

password = '5201314'

while count:

key = input('請輸入密碼:')

if key == password:

print('祝賀!密碼正確!')

break

elif '*'

in key:

print('密碼中不能含有字元\'*\'!你還有', count, '次機會!', end = '.')

continue

else:

if count != 0:

print('密碼輸入錯誤!你還有', count - 1, '次機會', end = '.')

else:

print('密碼輸入錯誤,請重新執行該測試系統.')

count -= 1

*****===密碼校驗系統*****===

請輸入密碼:*

123密碼中不能含有字元'*'!你還有 3 次機會!.請輸入密碼:

235i1

密碼輸入錯誤!你還有 2 次機會.請輸入密碼:

123密碼輸入錯誤!你還有 1 次機會.請輸入密碼:

5201314

祝賀!密碼正確!

>>>

1 編寫乙個程式,求 100~999 之間的所有水仙花數。

如果乙個 3 位數等於其各位數字的立方和,則稱這個數為水仙花數。

例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是乙個水仙花數

print('**********水仙花數計算器[100~999]**********')

temp = input('請輸入一位3位正整數:')

while

not temp.isdigit():

print('輸入錯誤!')

temp = input('請重新輸入一位3位正整數:')

num = int(temp)

# 求出各位十位百位

ge = num % 10

bai = num

// 100

shi = ((num - bai * 100) - ge) / 10

ifnum == ge**3 + shi**3 + bai**3:

print('數', num, '是水仙數!\n')

else:

print('數', num, '不是水仙數!\n')

print('[100~1000] 區間的水仙數有:', end = ' ')

for i in range(100, 1000):

temp = i

sum = 0

while temp:

# 先求個位的立方,再把三位數去掉最後一位,又求10位的立方,

# 在去掉10位,求百位的立方

sum += (temp % 10) ** 3

temp = temp// 10

ifsum == i:

print(i, end=' ')

2 三色球問題,有紅、綠、藍三種顏色的求,其中紅球 3 個,藍球 3 個,綠球 6 個。

先將這 12 個球混合放在乙個盒子中,從中任意摸出 8 個球,程式設計計算摸出球的各種顏色搭配。

print('**********rgbball select**********')

# red ball [0,1,2,3] range(0, 4)

# blue ball [0,1,2,3] range(0, 4)

# green ball [2, 3, 4, 5, 6] range(2, 7)

# restrictions: r + b + g == 8

for red in range(0, 4):

for blue in range(0,4):

for green in range(2, 7):

if red + blue + green == 8:

print( 'red:', red, ' ', 'blue:', blue, ' ', 'green:', green )

**********rgbball select**********

red: 0

blue: 2

green: 6

red: 0

blue: 3

green: 5

red: 1

blue: 1

green: 6

red: 1

blue: 2

green: 5

red: 1

blue: 3

green: 4

red: 2

blue: 0

green: 6

red: 2

blue: 1

green: 5

red: 2

blue: 2

green: 4

red: 2

blue: 3

green: 3

red: 3

blue: 0

green: 5

red: 3

blue: 1

green: 4

red: 3

blue: 2

green: 3

red: 3

blue: 3

green: 2

零基礎學習Python 作業 第11 12章

ch11 12 homework ch11 知識點回顧 主要函式 remove del pop slice member 1,2,3,4,5 member.remove 2 這裡移除是考慮移除的物件,不是指標的位置,但是不是移除所有的相同值,移除最前面的 member.pop 跟資料結構的棧一樣,從...

零基礎學習Python 作業 第13章

ch13 homework 0 請用一句話描述什麼是列表?再用一句話描述什麼是元組?answer 列表 乙個大池子,可以寫入各類資料,可以靈活的讀寫 元組 列表的真子集,或者說加了限制的列表,一旦固定便不能修改 元組只能通過slice拆分成新的元組,再進行拼接,不能進行新增等操作 1 什麼情況下你需...

零基礎入門學習Python

課程介紹 前半部分主要講解python3的語法特性,後半部分著重講解python3在爬蟲 tkinter pygame遊戲開發等例項上的應用。整個系列共16個章節,前邊13個章節從乙個小遊戲引入python,逐步介紹python的語法以及語言特色。最後3個章節為案例的演示,是前邊內容的總結和提高。課...