for 迴圈 作業

2022-08-17 23:06:16 字數 3411 閱讀 3689

for迴圈   語法如下:

for 變數名 in 可迭代物件: # 此時只需知道可迭代物件可以是字串\列表\字典,我們之後會專門講解可迭代物件

**一**二

...#例1for item in ['a','b','c']:

print(item)

# 執行結果ab

c# 補充! 如果需要遍歷的在同一行,可在後面加,end(' ')

# 參照例1來介紹for迴圈的執行步驟

# 步驟1:從列表['a','b','c']中讀出第乙個值賦值給item(item=『a』),然後執行迴圈體**

# 步驟2:從列表['a','b','c']中讀出第二個值賦值給item(item=『b』),然後執行迴圈體**

# 步驟3: 重複以上過程直到列表中的值讀盡

# 簡單版:for迴圈的實現方式

for count in range(6): # range(6)會產生從0-5這6個數

print(count)

# 複雜版:while迴圈的實現方式

count = 0

while count < 6:

print(count)

count += 1

案例二:遍歷字典!

# 簡單版:for迴圈的實現方式
dic =
for k in : # for 迴圈預設取的是字典的key賦值給變數名k 

print(k:dic)

for 的迴圈巢狀:

#請用for迴圈巢狀的方式列印如下圖形:

*****

*****

*****

for i in range(3):

for j in range(5):

print("*",end='')

print() # print()表示換行

與之相關練習可檢視日記3/10日

# 一:for迴圈

# 1.1 for迴圈巢狀之列印99乘法表

for i in range(1,10):

for j in range(1,i+1):

print('{}*{}={}'.format(j,i,j*i),end=' ')

print('')

# 1.2 for迴圈巢狀之列印金字塔

# 提示分析如下

number = int(input("請輸入金字塔的層數:"))

for i in range(number):

print(' '*(number-i)+'*'*(2*i-1))

#max_level=5

# * #current_level=1,空格數=4,*號數=1

# *** #current_level=2,空格數=3,*號數=3

# ***** #current_level=3,空格數=2,*號數=5

# ******* #current_level=4,空格數=1,*號數=7

# ********* #current_level=5,空格數=0,*號數=9

#數學表示式

# 空格數=max_level-current_level

# *號數=2*current_level-1

# 1.3 用for+range改寫今日早晨默寫的**,作為明天默寫內容

username = 'egon_dsb'

userpsw = '666'

for i in range(3):

user_name = input('請輸入您的使用者名稱')

user_psw = input('請輸入您的密碼')

if user_name == username and user_psw == userpsw:

print('登入成功')

while true:

cmd = input('請輸入您的命令指令》:q退出')

if cmd == 'q':

break

else:

print('命令{}正在執行'.format(cmd))

break

else:

print('賬戶密碼輸入錯誤')

i +=1

#二:字串操作

# 寫**,有如下變數,請按照要求實現每個功能 (共6分,每小題各0.5分)

name = ' alex'

# 1) 移除 name 變數對應的值兩邊的空格,並輸出處理結果

name1 = name.strip()

print(name1)

# 2) 判斷 name 變數對應的值是否以 "al" 開頭,並輸出結果


name2 = name.startswith('al')

print(name2)

# 3) 判斷 name 變數對應的值是否以 "x" 結尾,並輸出結果


name3 = name.endswith('x')

print(name3)

# 4) 將 name 變數對應的值中的 「l」 替換為 「p」,並輸出結果

name4 = name.replace('l','p')

print(name4)

# 5) 將 name 變數對應的值根據 「l」 分割,並輸出結果。

name5 = name.split('l')

print(name5)

# 6) 將 name 變數對應的值變大寫,並輸出結果


name6 = name.upper()

print(name6)

# 7) 將 name 變數對應的值變小寫,並輸出結果


name7 = name.lower()

print(name7)

# 8) 請輸出 name 變數對應的值的第 2 個字元?

name8 = name[1]

print(name8)

# 9) 請輸出 name 變數對應的值的前 3 個字元?

name9 = name[0:3]

print(name9)

# 10) 請輸出 name 變數對應的值的後 2 個字元?


name10 = name[-2:]

print(name10)

# 11) 請輸出 name 變數對應的值中 「e」 所在索引位置?


name11 = name.find('e')

print(name11)

# 12) 獲取子串行,去掉最後乙個字元。如: oldboy 則獲取 oldbo。

name12 = name[:-1]

print(name12)

迴圈提高作業

1.控制台輸入年齡,根據年齡輸出不同的提示 例如 老年人,青壯年,成年人,未成年,兒童 age int input 請輸入年齡 if age 18 if age 10 print 兒童 else print 未成年 elif age 60 if age 40 print 青壯年 else print...

迴圈作業提高

1.控制台輸入年齡,根據年齡輸出不同的提示 例如 老年人,青壯年,成年人,未成年,兒童 age int input 請輸入年齡 if age 18 if age 10 print 兒童 else print 未成年 elif age 60 if age 40 print 青壯年 else print...

作業for迴圈例項

1.一張紙的厚度是0.0001公尺,將紙對折,對折多少次厚度超過珠峰高度8848公尺。答案27次。1 var a 0.0001 2var b 0 3 while a 8848 7 alert b 1 var a 0.0001 2var b 0 3while true 9 10 alert b 2.有...