每當我運行我的代碼時,都會出現一個錯誤,指出“TypeError:只能將 str(而不是“int”)連接到 str”,這會出現output = output text.yellow number在行中。我知道我不能添加一個帶有字串的整數,為此我還在該行之前更改了它的型別,但它似乎不起作用,我無法理解錯誤是什么以及如何解決它,hep會是非常感謝
我的代碼如下:
資訊:這text.yellow是一個類屬性,它只是將文本更改為黃色。available_numbers 和 choosen_numbers 是一個串列
def print_board():
number = 1
output = ""
while number < 91:
if number in available_numbers:
str(number)
output = output text.yellow number
int(number)
elif number in choosen_numbers:
str(number)
output = output text.green number
int(number)
number = 1
print(output)
uj5u.com熱心網友回復:
如果您想str(number)實際int(number)更改. 但無論如何,您應該使用 f-string 或 format 來連接 int 和字串,例如:numbernumber
output = f"{output} {text.yellow} {number}"
萬一您仍想使用 格式化它 ,您應該執行以下操作:
output = output text.yellow str(number)
確保這text.yellow也是一個 str
uj5u.com熱心網友回復:
變數 number 仍然是一個整數。試試這個:output = output text.green str(number)或將字串版本存盤在這樣的變數string_number = str(number)中并使用該變數進行連接
uj5u.com熱心網友回復:
嘗試這個:
def print_board():
number = 1
output = ""
while number < 91:
if number in available_numbers:
output = output text.yellow str(number)
elif number in choosen_numbers:
output = output text.green str(number)
number = 1
print(output)
uj5u.com熱心網友回復:
確切地說,您可以將整數轉換為字串,但不幸的是,您無法將其保存在任何地方。做這個
number=str(number)
或者
這個
output = output text.yellow str(number)
而不是這個
str(number)
uj5u.com熱心網友回復:
您不需要每次需要更改型別時都更改型別。您可以在需要時更改型別,而不必將其更改回來))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/492586.html
