我正在嘗試編輯bigalgs的值,但是當我實際列印它的值時,它只會吐出bigalgs的初始值,即0。為什么會這樣?我是否以錯誤的方式增加bigalgs的價值?我認為這是通過簡單地使用 符號...也許是for 回圈?幫助!
(僅供參考,這里的 alg 表示演算法)
class scinoteConvert:
def __init__(self, num):
alglog = []
alglist = []
bigalgs = 0
num = str(num)
for alg in num:
alglist.append(alg)
for alg in alglist:
if int(alg) < 1:
alglog.append(True)
else:
alglog.append(False)
print(bigalgs)
bigalgs 1
print(alglist, alglog, bigalgs)
input = int(input('Insert num: '))
if input < 1:
exit('Error! Cannot calculate negative values!')
scinoteConvert(input)
uj5u.com熱心網友回復:
您的代碼是正確的,但您應該在語法中添加 1
bigalgs = 1
代碼將變成:
class scinoteConvert:
def __init__(self, num):
alglog = []
alglist = []
bigalgs = 0
num = str(num)
for alg in num:
alglist.append(alg)
for alg in alglist:
if int(alg) < 1:
alglog.append(True)
else:
alglog.append(False)
print(bigalgs)
bigalgs = 1
print(alglist, alglog, bigalgs)
input = int(input('Insert num: '))
if input < 1:
exit('Error! Cannot calculate negative values!')
scinoteConvert(input)
uj5u.com熱心網友回復:
在你需要寫的代碼中: bigalgs = bigalgs 1 這樣變數 bigalgs 的值將增加 1。當寫入 bigalgs 1 時 bigalgs 的值不會改變
uj5u.com熱心網友回復:
我認為你應該寫 bigalgs = bigalgs 1而不是bigalgs 1. 當你寫的時候,bigalgs 1你不會改變變數的值。
uj5u.com熱心網友回復:
你必須使用 = 1,所以bigalgs = 1,所以你的解決方案是
bigalgs = bigalgs =1
because =1 is for incrementing a variable by one in a loop,所以如果它是可變的,就地修改物件。你只寫了 bigalgs 1。
以下是如何以正確的方式增加 bigals 值。這樣當你列印 bigals 值時,你不應該吐出它的初始值 0。
class scinoteConvert:
def __init__(self, num):
alglog = []
alglist = []
bigalgs = 0
num = str(num)
for alg in num:
alglist.append(alg)
for alg in alglist:
if int(alg) < 1:
alglog.append(True)
else:
alglog.append(False)
print(bigalgs)
bigalgs = bigalgs =1
print(alglist, alglog, bigalgs)
input = int(input('Insert num: '))
if input < 1:
exit('Error! Cannot calculate negative values!')
scinoteConvert(input)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/374259.html
上一篇:如何設定一個帶有向后迭代的settimeout的for回圈?
下一篇:C for回圈在輸入后結束
