Python 2.7 随机码

标签 python python-2.7 random

在 python 2.7 中,我试图创建一个程序,它将生成一个介于 100000 和 999999999 之间的随机数,然后将其发送到用户的电子邮件中。到目前为止,它会创建一个随机数,然后将其发送到用户的电子邮件中,但是当用户输入他们的代码时,它总是打印不正确。我该如何解决这个问题?

    code = random.randrange(100000, 99999999)

    entry = getpass.getpass('Code: ')
    if entry == code:   
        print 'Welcome!'
    else:
        print 'Incorrect!'

最佳答案

您正在比较 int 对象(由 random.randrange 生成)和 str 对象(由 getpass.getpass 返回); yield 始终为 false。

>>> 1 == '1'
False

code 转换为 str.

>>> str(1) == '1'
True

或者,您可以将 entry 转换为 int。但是,您应该检查条目是否只包含数字或者应该捕获 ValueError。

关于Python 2.7 随机码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18341228/

相关文章:

python - 从一组文本文件中获取随机句子

go - 如何在官方围棋之旅中播种随机数生成器?

java - Java 中的默认种子 PRNG

python - 在 python 中使用 Tf-Idf 的搜索引擎

python - 执行 "from tkinter import *"后为什么 ttk 没有定义?

python - pip wheel 条件依赖

python - 如何使以下文本出现在我的 python 程序中?

python - 标题大小写的正则表达式 - Python

python - 为没有写入权限的用户在网络驱动器上安装 Python

python - python中的Keras序列分类