第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Python 循環(huán)中查找第一個數(shù)字索引?

在 Python 循環(huán)中查找第一個數(shù)字索引?

達令說 2021-07-09 14:15:46
found = Falseposition = 0while not found and position < len(inputString):    if inputString[position].isdigit():        found = True    else:        position += 1if found:    print('first digit is at position', position)else:    print('There are no digits in the string')這是我發(fā)現(xiàn)的一個簡單程序,用于查找輸入字符串中的第一個數(shù)字。我無法理解的事情是......if inputString[position].isdigit():     found = True這個表達式究竟說明了什么,特別是inputString[position]部分。我們是否在尋找第一個數(shù)字的位置/索引值,然后將循環(huán)分解為下面的打印語句?
查看完整描述

3 回答

?
千巷貓影

TA貢獻1829條經(jīng)驗 獲得超7個贊

我們是否在尋找第一個數(shù)字的位置/索引值,然后將循環(huán)分解為下面的打印語句?


是的,這是真的。它會中斷,因為一旦找到一個數(shù)字,在下一次迭代while not found條件中就會給出while False和中斷while循環(huán)。值得注意的是and短路,因此甚至不評估第二個條件。


如果未找到數(shù)字,則position遞增直至等于len(inputString),此時while循環(huán)通過第二個條件即 中斷position < len(inputString)。


編寫while循環(huán)的一種更 Pythonic / 慣用的方法是通過for循環(huán)和enumerate:


for idx, val in enumerate(inputString, 1):

    if val.isdigit():

        position = idx

        break

else:

    position = 0


if position:

    print('first digit is at position', position)

else:

    print('There are no digits in the string')

注意,在這個解決方案中,由于我們從 1 開始計數(shù),我們可以利用這樣一個事實,如果找到一個數(shù)字,它必須是“Truthy”,即非零。因此,我們不需要額外的found變量。


查看完整回答
反對 回復 2021-07-21
?
慕無忌1623718

TA貢獻1744條經(jīng)驗 獲得超4個贊

position是您的迭代變量,就像在for循環(huán)中一樣。因此,每次找不到數(shù)字時,都會轉(zhuǎn)到字符串中的下一個字符。

TheinputString[position]讀取什么代表position's 在字符串中的位置。所以,如果你的字符串abcdefg,然后inputString[2]= c(不是b因為Python從0開始計數(shù))。

.isdigit()隨后看,如果在此位置是一個數(shù)字。如果是數(shù)字,則found = Truewhile循環(huán)停止。(否則它繼續(xù)。)

循環(huán)結(jié)束后,該函數(shù)會根據(jù) .csv 文件中是否有數(shù)字來打印兩條消息之一inputString。


查看完整回答
反對 回復 2021-07-21
?
慕運維8079593

TA貢獻1876條經(jīng)驗 獲得超5個贊

您正在尋找inputString位置的 值,position。position首先初始化為零,然后while循環(huán)每個位置(注意position += 1)以查看它是否.isdigit().


查看完整回答
反對 回復 2021-07-21
  • 3 回答
  • 0 關(guān)注
  • 304 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號