欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python如何在for循環(huán)中同時(shí)使用兩個(gè)變量與兩個(gè)控制條件

 更新時(shí)間:2024年03月08日 10:35:15   作者:L_1900  
Python是一種廣泛使用的編程語(yǔ)言,其提供了許多強(qiáng)大的方法來(lái)處理代碼,Python?for循環(huán)是其中一種非常有用的方法,下面這篇文章主要給大家介紹了關(guān)于Python如何在for循環(huán)中同時(shí)使用兩個(gè)變量與兩個(gè)控制條件的相關(guān)資料,需要的朋友可以參考下

在C語(yǔ)言中常常遇到for循環(huán)使用兩個(gè)變亮和兩個(gè)控制條件的情況,比如我要輸出矩陣對(duì)角線元素的坐標(biāo)時(shí)

例如輸出:

0,0
1,1
2,2
3,3
...

在C語(yǔ)言中,我們會(huì)這樣使用for循環(huán)來(lái)輸出

for(i=0,j=0;i<n,j<n;i++,j++){
    printf(i,j)
    printf("\n")
}

在python中如何使用for循環(huán)達(dá)到類似于上面c語(yǔ)言的這樣的結(jié)果呢?

一開始很多人不假思索的就直接敲下如下的代碼

for i in range(n):
    for j in range(n):

很明顯,這樣的邏輯是不對(duì)的,因?yàn)槲覀円笤谝粋€(gè)for循環(huán)內(nèi)滿足兩個(gè)控制條件,如果按照上面代碼的邏輯,就是遍歷完一次j的值,i才會(huì)+1,和上面每一次i,j的值同時(shí)加一相違背。

這里就可以用python中的zip()函數(shù)。

先來(lái)直觀看一下zip()函數(shù)的作用

a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,b)     # 返回一個(gè)對(duì)象
zipped
<zip object at 0x103abc288>
>>> list(zipped)  # list() 轉(zhuǎn)換為列表
[(1, 4), (2, 5), (3, 6)]
>>> list(zip(a,c))              # 元素個(gè)數(shù)與最短的列表一致
[(1, 4), (2, 5), (3, 6)]

故可以改為

for i,j in zip(range(n),range(n)):
    print(i,j)

輸出結(jié)果同上.

有些人可能疑惑這里也可以用

for i in range(n):
    print(i,i)

來(lái)表示

不過這個(gè)是一個(gè)特殊的情況,如果i,j值不同的話,我們只能使用zip()函數(shù)來(lái)達(dá)到同上面c語(yǔ)言同樣的目的。

附:python多個(gè)變量的for循環(huán)

當(dāng)for循環(huán)有兩個(gè)需要迭代的對(duì)象時(shí),要用zip對(duì)這多個(gè)變量封裝,否則會(huì)報(bào)錯(cuò)“too many values to unpack”

錯(cuò)誤的例子:

starts = [0,1,2,3,4]
ends = [5,6,7,8,9]
for start, end in starts, ends:
    print((start, end))

正確的例子:

starts = [0,1,2,3,4]
ends = [5,6,7,8,9]
for start, end in zip(starts, ends):
    print((start, end))

總結(jié)

到此這篇關(guān)于Python如何在for循環(huán)中同時(shí)使用兩個(gè)變量與兩個(gè)控制條件的文章就介紹到這了,更多相關(guān)Python for循環(huán)同時(shí)用兩個(gè)變量和控制條件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python構(gòu)建機(jī)器學(xué)習(xí)API服務(wù)的操作過程

    Python構(gòu)建機(jī)器學(xué)習(xí)API服務(wù)的操作過程

    這篇文章主要介紹了Python構(gòu)建機(jī)器學(xué)習(xí)API服務(wù)的操作過程,通過本文的指導(dǎo),讀者可以學(xué)習(xí)如何使用Python構(gòu)建機(jī)器學(xué)習(xí)模型的API服務(wù),并了解到在實(shí)際應(yīng)用中需要考慮的一些關(guān)鍵問題和解決方案,從而為自己的項(xiàng)目提供更好的支持和服務(wù),需要的朋友可以參考下
    2024-04-04
  • Python字典深淺拷貝與循環(huán)方式方法詳解

    Python字典深淺拷貝與循環(huán)方式方法詳解

    這篇文章主要介紹了Python字典深淺拷貝與循環(huán)方式方法詳解,需要的朋友可以參考下
    2020-02-02
  • 解析python的局部變量和全局變量

    解析python的局部變量和全局變量

    函數(shù)內(nèi)部定義的變量就叫局部變量而如果一個(gè)變量既能在一個(gè)函數(shù)中使用,也可以在其他函數(shù)中使用,這樣的變量就是全局變量。 本文給大家介紹python的局部變量和全局變量的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2019-08-08
  • Python縮進(jìn)和冒號(hào)詳解

    Python縮進(jìn)和冒號(hào)詳解

    下面小編就為大家?guī)?lái)一篇Python縮進(jìn)和冒號(hào)詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2016-06-06
  • 關(guān)于Python不換行輸出和不換行輸出end=““不顯示的問題(親測(cè)已解決)

    關(guān)于Python不換行輸出和不換行輸出end=““不顯示的問題(親測(cè)已解決)

    這篇文章主要介紹了關(guān)于Python不換行輸出和不換行輸出end=““不顯示的問題(親測(cè)已解決),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • MATLAB中print函數(shù)使用示例詳解

    MATLAB中print函數(shù)使用示例詳解

    print函數(shù)的功能是打印圖窗或保存為特定文件格式,這篇文章主要介紹了MATLAB中print函數(shù)使用,需要的朋友可以參考下
    2023-03-03
  • 詳解Python的Django框架中的模版繼承

    詳解Python的Django框架中的模版繼承

    這篇文章主要介紹了詳解Python的Django框架中的模版繼承,就像Python中面對(duì)對(duì)象的方法繼承道理類似,需要的朋友可以參考下
    2015-07-07
  • python線程定時(shí)器Timer實(shí)現(xiàn)原理解析

    python線程定時(shí)器Timer實(shí)現(xiàn)原理解析

    這篇文章主要介紹了python線程定時(shí)器Timer實(shí)現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Python從零打造高安全密碼管理器

    Python從零打造高安全密碼管理器

    在數(shù)字化時(shí)代,每人平均需要管理近百個(gè)賬號(hào)密碼,本文將帶大家深入剖析一個(gè)基于Python的高安全性密碼管理器實(shí)現(xiàn)方案,感興趣的小伙伴可以參考一下
    2025-04-04
  • python路徑的寫法及目錄的獲取方式

    python路徑的寫法及目錄的獲取方式

    今天小編就為大家分享一篇python路徑的寫法及目錄的獲取方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-12-12

最新評(píng)論