如果语句未打印所需的值

时间:2015-12-31 22:27:00

标签: python

如果原始输入为1,它应该打印出存储在生成器变量中的东西,但它没有这样做,即使我写了1,它也会执行else语句。

from random import randint

print('1. Generate again.')
print('2. Close')
x = raw_input('Pick your selection 1 or 2: ')

if x == 1:
    generator = (randint(1000000000000000,999000000000000009))
    print generator
else:
    print 'bye'

2 个答案:

答案 0 :(得分:3)

您将字符串(输入内容)与int进行比较。请改为awk

答案 1 :(得分:2)

Turn的答案很好,但有另一种方法可以使用int()来完成此操作。内置函数int()将字符串视为int。

from random import randint

print('1. Generate again.')
print('2. Close')
x = raw_input('Pick your selection 1 or 2: ')

if int(x) == 1:
    generator = (randint(1000000000000000,999000000000000009))
    print generator
else:
    print 'bye'