Python内乘整数;打印();

Python内乘整数;打印();,python,python-3.x,multiplication,Python,Python 3.x,Multiplication,所以我有代码(相关代码): 我想让它做的是打印valin的值乘以2,但不知道怎么做!如何?使用int将输入字符串转换为整数: valin = int(input("How much would you like to bet?: ")) 然后继续前面的操作。使用int将输入字符串转换为整数: valin = int(input("How much would you like to bet?: ")) 然后像以前一样继续。打印(“如果它落在偶数上,您将赢得%d”%valin*2)打印(“如果

所以我有代码(相关代码):


我想让它做的是打印valin的值乘以2,但不知道怎么做!如何?

使用
int
将输入字符串转换为整数:

valin = int(input("How much would you like to bet?: "))

然后继续前面的操作。

使用
int将输入字符串转换为整数:

valin = int(input("How much would you like to bet?: "))
然后像以前一样继续。

打印(“如果它落在偶数上,您将赢得%d”%valin*2)

打印(“如果它落在偶数上,您将赢得%d”%valin*2)

使用:

编辑:您可能需要执行一些输入验证,以确保从
输入中得到的是整数,或者可以解析为整数,否则请再次询问

编辑2:如果larsmans的评论正确,则需要将输入解析为
int
。固定在上面。

使用:

编辑:您可能需要执行一些输入验证,以确保从
输入中得到的是整数,或者可以解析为整数,否则请再次询问


编辑2:如果larsmans的评论正确,则需要将输入解析为
int
。上面已修复。

您的问题是,的结果将是
str
,而不是
int
,并且乘法对字符串有不同的含义。以下是一个例子:

>>> valin = input("How much would you like to bet?: ")
How much would you like to bet?: 20
>>> type(valin)      # valin is a string!
<type 'str'>
>>> valin * 2        # multiplication will concatenate the string to itself
'2020'
>>> int(valin) * 2   # first convert it to an int, then multiply
40

您的问题是,的结果将是一个
str
,而不是
int
,并且乘法对字符串有不同的含义。以下是一个例子:

>>> valin = input("How much would you like to bet?: ")
How much would you like to bet?: 20
>>> type(valin)      # valin is a string!
<type 'str'>
>>> valin * 2        # multiplication will concatenate the string to itself
'2020'
>>> int(valin) * 2   # first convert it to an int, then multiply
40

OP似乎在使用Python3,其中
input
总是返回一个字符串(如Python2中的
raw\u input
)。我建议使用Python-3首选的字符串格式方法:
“如果它落在偶数上,则赢得{}”。格式(int(valid)*2)
。不过最后还是得出了同样的结论。OP似乎在使用Python3,其中
input
总是返回一个字符串(就像Python2中的
raw\u input
)。我建议使用Python-3首选的字符串格式方法:
“如果它落在偶数上,你就赢了{}”。format(int(valid)*2)
。但最后还是得出了同样的结论。问题是
valin
str
,而不是像其他人指出的那样
int
。另外,
%
优先于
*
。您需要将
valin*2
放入
()
中。问题是
valin
str
,而不是其他人指出的
int
。另外,
%
优先于
*
。您需要将
valin*2
放入
()
中。您尝试了什么?你试的时候发生了什么?你想发生什么?你认为为什么会这样?你试了什么?你试的时候发生了什么?你想发生什么?你认为为什么会这样?
print("You have chosen to bet on the even numbers")
while True:
    try:
        valin = int(input("How much would you like to bet?: "))
        break
    except ValueError:
        print("Invalid input, please enter an integer")
print("If it lands on an even number, you win", valin*2)