簡體   English   中英

有沒有辦法通過使用它們的后綴號作為迭代器來總結不同的聲明字符串變量?

[英]Is there a way to sum different declared string variables by using their suffix number as iterator?

我不想手動對每個聲明的字符串變量求和。

word1 = "How"
word2 = "do"
word3 = "you"
word4 = "like"
word5 = "Python"
word6 = "so"
word7 = "far?"
totalword=word1+" "+word2+" "+word3+" "+word4+" "+word5+" "+word6+" "+word7
print(totalword)

有辦法,但不是那么蟒蛇:

word1 = "How"
word2 = "do"
word3 = "you"
word4 = "like"
word5 = "Python"
word6 = "so"
word7 = "far?"

for i in range(7):
    totalword += globals().get('word' + i)

這並不理想,但應該可以。

word1 = "How"
word2 = "do"
word3 = "you"
word4 = "like"
word5 = "Python"
word6 = "so"
word7 = "far?"

mask = "word"

final = " ".join([eval(mask+str(x)) for x in range(1,8)])
print(final)

你可以使用這個:

word1 = "How"
word2 = "do"
word3 = "you"
word4 = "like"
word5 = "Python"
word6 = "so"
word7 = "far?"

res = ' '.join([globals()[x] for x in globals() if 'word' in x])
print(res)

# How do you like Python so far?

雖然,這是一個不好的做法。

此外,您可以使用正則表達式來 state 您對什么樣的全局變量感興趣,例如在nm之間有一個數字等。

您可以嘗試使用表格中的變量進行類似的操作

word1 = "How"
word2 = "do"
word3 = "you"
word4 = "like"
word5 = "Python"
word6 = "so"
word7 = "far?"
words = [word1,word2,word3,word4,word5,word6,word7]
totalword = ""
for _ in range(len(words)):
    totalword += words[_]+" "
print(totalword)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM