不会添加理货大师心灵游戏 python
wont add tally master mind game python
import random
thenum = random.randint(1000, 9999)
print (thenum)
tally = 1
guessone = int(input("What is your first guess?: "))
strguessone = str(guessone)
strthenum = str(thenum)
if strguessone [0] == strthenum [0]:
tally + 1
if strguessone [1] == strthenum [1]:
tally + 1
if strguessone [2] == strthenum [2]:
tally + 1
if strguessone [3] == strthenum [3]:
tally + 1
print (tally)
if tally == 5:
print ("You Win")
当我 运行 这段代码时,我只从打印计数中得到一个响应 为什么我在 if 语句中添加计数 我知道我应该使用循环,但我认为这就是我想做
当你这样做时 -
tally + 1
它计算该表达式的结果,但随后将结果丢弃,因为您没有指示 Python 解释器对结果做任何事情。如果您希望 tally
增加一,则必须将结果分配回 tally
。例子-
tally += 1
您应该使用 += 运算符而不是 + 运算符。
import random
thenum = random.randint(1000, 9999)
print (thenum)
tally = 1
guessone = int(input("What is your first guess?: "))
strguessone = str(guessone)
strthenum = str(thenum)
if strguessone [0] == strthenum [0]:
tally += 1
if strguessone [1] == strthenum [1]:
tally += 1
if strguessone [2] == strthenum [2]:
tally += 1
if strguessone [3] == strthenum [3]:
tally += 1
print (tally)
if tally == 5:
print ("You Win")
tally + 1
语句所做的只是计算计数加一的值。它不保存新值。您需要改为 tally = tally + 1
。但是,在这种情况下,您可以直接比较数字,而不是将两个值都转换为字符串并比较这些字符串(您无论如何都可以这样做,而无需手动逐个比较每个字符):
import random
thenum = random.randint(1000, 9999)
print (thenum)
guessone = int(input("What is your first guess?: "))
if thenum == guessone:
print ("You Win")
import random
thenum = random.randint(1000, 9999)
print (thenum)
tally = 1
guessone = int(input("What is your first guess?: "))
strguessone = str(guessone)
strthenum = str(thenum)
if strguessone [0] == strthenum [0]:
tally + 1
if strguessone [1] == strthenum [1]:
tally + 1
if strguessone [2] == strthenum [2]:
tally + 1
if strguessone [3] == strthenum [3]:
tally + 1
print (tally)
if tally == 5:
print ("You Win")
当我 运行 这段代码时,我只从打印计数中得到一个响应 为什么我在 if 语句中添加计数 我知道我应该使用循环,但我认为这就是我想做
当你这样做时 -
tally + 1
它计算该表达式的结果,但随后将结果丢弃,因为您没有指示 Python 解释器对结果做任何事情。如果您希望 tally
增加一,则必须将结果分配回 tally
。例子-
tally += 1
您应该使用 += 运算符而不是 + 运算符。
import random
thenum = random.randint(1000, 9999)
print (thenum)
tally = 1
guessone = int(input("What is your first guess?: "))
strguessone = str(guessone)
strthenum = str(thenum)
if strguessone [0] == strthenum [0]:
tally += 1
if strguessone [1] == strthenum [1]:
tally += 1
if strguessone [2] == strthenum [2]:
tally += 1
if strguessone [3] == strthenum [3]:
tally += 1
print (tally)
if tally == 5:
print ("You Win")
tally + 1
语句所做的只是计算计数加一的值。它不保存新值。您需要改为 tally = tally + 1
。但是,在这种情况下,您可以直接比较数字,而不是将两个值都转换为字符串并比较这些字符串(您无论如何都可以这样做,而无需手动逐个比较每个字符):
import random
thenum = random.randint(1000, 9999)
print (thenum)
guessone = int(input("What is your first guess?: "))
if thenum == guessone:
print ("You Win")