日本欧美一区-日本欧美一区二区三区片-日本强好片久久久久久AAA-日本-区一区二区三区A片-日本人伦一区二区三区-日本人妻A片成人免费看

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 編程學習 >> Python >> 正文

Python for循環詳解【附代碼實例】遍歷字典 for循環嵌套 九九乘法表

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2023/10/1
文章目錄

一、for循環

for循環:循環就是重復做某件事,for循環是python提供第二種循環機制(第一種是while循環),理論上for循環能做的事情,while循環都可以做。

目的:之所以要有for循環,是因為for循環在循環取值(遍歷取值)比while循環更簡潔。

(文末送讀者福利)

二、for循環語法如下

for 變量名 in 可迭代對象: # 此時只需知道可迭代對象可以是字符串\列表\字典,其實也可以是tuple(),set()
代碼一
代碼二

# # for循環
# # 列表取值
# l = ['lsj','a','b']
# for x in l:
#     print(x)
lsj
a
b    ...
# 參照例1來介紹for循環的運行步驟
# 步驟1:從列表['lsj','a','b']中讀出第一個值賦值給x(x=‘lsj’),然后執行循環體代碼
# 步驟2:從列表
['lsj','a','b']

 

三、 for循環應用案例

案例一:for循環實現方式
# 簡單版:for循環的實現方式
# l = ['lsj', 'b', 'c']  # 定義一個列表
# for x in l:
#     print(x)
# lsj
# b
# c
# 復雜版:while循環的實現方式
l = ["lsj","b","c"]
i = 0
while i < 3:
    print(l[i])
    i += 1
# lsj
# b
# c
# 使用循環取出0-5的值
# 簡單版: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 = {
'name':'lsj','age':18,'gender':'male'}
for k in dic:  # for 循環默認取的是字典的key賦值給變量名k
    print(k,dic[k])
# name lsj
# age 18
# gender male
# 復雜版:while循環確實可以遍歷字典,后續將會迭代器部分詳細介紹
案例三:for循環嵌套
#請用for循環嵌套的方式打印如下圖形:
*****
*****
*****
for i in range(3):
    for j in range(5):
        print("*",end='')
    print()  # print()表示換行

四、總結for循環與while循環的異同

(1)相同之處:都是循環,for循環可以干的事,while循環也可以干

(2)不同之處:

while循環稱之為‘’條件循環‘’,循環次數取決于條件何時變為假

for循環稱之為"取值循環",循環次數取決in后包含的值的個數

五、for循環控制循環次數:range()

in后直接放一個數據類型來控制循環次數有局限性:

當循環次數過多時,數據類型包含值的格式需要伴隨著增加

range功能介紹

range(10)  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 從0開始有頭無尾
range(1,10,1)  # 1 2 3 4 5 6 7 8 9 設定開始,結束,步長
range(1,10,2)  # 1 3 5 7 9

range()的補充:python2與python3的不同之處。

在python2中對range(10)的處理:一個籃子里面裝有10個雞蛋,空間較大。

在python3中對range(10)的優化:一只可以下10個雞蛋的母雞,空間較小。

for搭配range,可以按照索引取值,(比較麻煩所以不推薦)

l = ['lsj', 'a', 'c']  # len(l)
for i in range(len(l)):
    print(i, l[i])
for x in l:
    print(x)

PEP8規范寫法

for i in range(5):
    if i == 4:continue # PEP8規范不建議這樣寫
    print(i)
for i in range(5):
    if i == 4:
        continue # PEP8規范這樣寫
    print(i)

六、for循環的跳出

for+break: 同while循環一樣,只要運行到break就會立刻中止本層循環

for+else:同while循環一樣,只要運行到break就立即終止本次循環

總結:for+break,for+continue,for+else的用法與while相同

練習一:
# 打印九九乘法表
for i in range(1,10):
    for j in range(1,i+1):
        print('%s*%s=%s' %(i,j,i*j),end=' ')
    print()
練習二:
# 打印金字塔
# 分析
'''
#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
'''
# 實現:
max_level=5
for current_level in range(1,max_level+1):
    for i in range(max_level-current_level):
        print(' ',end='') #在一行中連續打印多個空格
    for j in range(2*current_level-1):
        print('*',end='') #在一行中連續打印多個空格
    print()
Tags:Python,乘法表  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊。 昵稱:注冊  登錄
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢