這裏更換他們是我的代碼:Python是不承認我的變量,而是以零
change = 0
count = 0
value = 0
answer = 0
def numberTest():
if change == 0:
skip()
else:
value = change
def skip():
count + 1
number = value
# Check if the input is valid
if value != number:
print('PLEASE ENTER A VALID NUMBER!!!')
else:
Even = number % 2
if Even == 0:
print('Substituting even number in: x/2')
print('%s/2=' % number)
answer = number/2
else:
print('Substituting odd number in: 3x + 1')
print('3' + number + ' + 1=')
answer = number * 3
answer = answer + 1
answer = str(answer)
print(''+ answer +'')
if answer == 1:
finalValue()
else:
check()
def check():
value = answer
skip()
def loop():
value = int(input('Input a number: '))
change = value
skip()
loop()
def finalValue():
print('The number (' + change + ') returned as 1.')
print('A total of (' + count + ') commands were executed.')
change = change + 1
count = 0
print('')
print('')
print('')
numberTest()
每當我開始的代碼,我被要求輸入一個數字(如預期),但隨後出現這種情況:
Input a number: 1
Substituting even number in: x/2
0/2=
0.0
我真的不明白爲什麼程序無法正常工作如我所料,但代碼中的一個部分,我懷疑:
value = int(input('Input a number: '))
我也這樣寫我自己,我是新來的Python,我只先前批工作,所以轉換是很容易,但我不是很熟悉的一些命令......
編輯 我期望程序要做的是要求一個數字,存儲這個數字,然後運行它通過一系列測試,但是當數字到達實際測試時,它會用「x」代替「0」,即使我輸入一個數字,如「54656」。也許,當它要求輸入號碼時,我輸入號碼時,它只是不能正確存儲,或者我的代碼有問題...
如果這是你想要的,'skip()'方法的第一行不會遞增'count'。 – PepperoniPizza
這裏有很多混亂,你甚至不需要一半的變量。 – aIKid
好吧,正如我所說的,我是Python的新手,跟蹤所有變量並且仍然有一個工作腳本是具有挑戰性的 – TechnologicalGenious