【发布时间】:2021-02-21 22:17:19
【问题描述】:
import random, string, pyautogui, time numbers=random.randint(1000000000, 1000000000000) def random_char(y): return ''.join(random.choice(string.ascii_letters) for x in range(y)) time.sleep(2) pyautogui.typewrite(random_char(10)) time.sleep(0.5) pyautogui.write(numbers)
输出 = piTPLlrXPn (
但数字不起作用
错误:
Exception has occurred: TypeError
'int' object is not iterable
File "C:\Users\Noah\Pictures\Python\test.py", line 9, in <module>
pyautogui.write(numbers)
编辑:现在工作!感谢您的帮助!
【问题讨论】:
-
名称
numbers暗示它应该是一个列表,但random.randint返回一个整数。另外,你确定不想要random.randrange? -
看来
pyautogui.write(numbers)需要一个可迭代的。您可以将数字转换为字符串。 -
您真的想要一个随机数,还是想要一个完全由数字组成的 10 个字符的字符串?
-
Ints 是不可迭代的,但是字符串是可迭代的,所以如果你将你的 int(在这种情况下是变量命名的数字)转换为字符串,你应该能够得到你想要的
-
如果需要,请将最后一行的
numbers替换为str(numbers)。