问题描述
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)
编辑:现在工作!感谢您的帮助!
解决方法
整数范围有限,您输入的范围很大且超出范围。尝试更小的值,例如 1000,10000
,pyautogui.write() 需要一个可迭代对象,int 不可迭代,但字符串是可迭代的,在这种情况下你只需要调用,
pyautogui.write(str(numbers))
这应该写入您在代码开头获得的随机数。
但是,您可以执行类似于使用 ascii 字符所做的操作,给出 int 字符列表,或者如果您想要带有字母和数字的结果,可以使用数字扩展 ascii 字符列表