Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 随机数生成器,int(),.get()_Python_Tkinter - Fatal编程技术网

Python 随机数生成器,int(),.get()

Python 随机数生成器,int(),.get(),python,tkinter,Python,Tkinter,这段代码只是返回了一个错误。我不知道如何为这个随机数生成器组合int()和.get()。.get()用于获取输入的数字,并将其用作变量,以便有人希望从这些数字中输出一个随机数 from tkinter import * import tkinter as tk import random root = tk.Tk() root.title("random number generator") def new_number(): text.config(text=r

这段代码只是返回了一个错误。我不知道如何为这个随机数生成器组合
int()
.get()
.get()
用于获取输入的数字,并将其用作变量,以便有人希望从这些数字中输出一个随机数

from tkinter import *
import tkinter as tk
import random

root = tk.Tk()
root.title("random number generator")

def new_number():
    text.config(text=random.randint(0, 100), font=("times", 50))

tb1 = Entry(root)
tb2 = Entry(root)
tb1.grid(row=0, column=3)
tb2.grid(row=0, column=0)

text = tk.Label(root, text=random.randint(int(tb1.get()), int(tb2.get())), font=("times", 50))
text.grid(row=1, column=2)

button = tk.Button(root, text="New number", width=15, command=new_number, font=("times", 50))
button.grid(row=2, column=2)

root.mainloop()

您需要设置默认值。使用时:

text = tk.Label(root, text=random.randint(int(tb1.get()), int(tb2.get())), font=("times", 50))
tb1.get()和tb2.get()为空

解决方案:

from tkinter import *
import tkinter as tk
import random

root = tk.Tk()
root.title("random number generator")


def new_number():
    text.config(text=str(random.randint(int(tb1.get()), int(tb2.get()))), font=("times", 50))


tb1 = Entry(root)
tb2 = Entry(root)
tb1.grid(row=0, column=3)
tb2.grid(row=0, column=0)

tb1.insert(10, 0)
tb2.insert(10, 100)

text = tk.Label(root, text=str(random.randint(int(tb1.get()), int(tb2.get()))), font=("times", 50))
text.grid(row=1, column=2)

button = tk.Button(root, text="New number", width=15, command=new_number, font=("times", 50))
button.grid(row=2, column=2)

root.mainloop()

必须为
tb1
tb2
条目小部件插入一个整数。定义变量
text
时,试图获取
tb1
的int值,但该值无效,因为其中没有任何内容。因此,在生成
text
变量之前,应该插入一个整数

代码:

from tkinter import *
import tkinter as tk
import random

root = tk.Tk()
root.title("random number generator")

def new_number():
  text.config(text=random.randint(0, 100), font=("times", 50))


tb1 = Entry(root)
tb2 = Entry(root)
tb1.grid(row=0, column=3)
tb2.grid(row=0, column=0)

# Insert a number to each input box
tb1.insert(END, 1)
tb2.insert(END, 2)


text = tk.Label(root, text=random.randint(int(tb1.get()), int(tb2.get())), font=("times", 50))
text.grid(row=1, column=2)

button = tk.Button(root, text="New number", width=15, command=new_number, font=("times", 50))
button.grid(row=2, column=2)

root.mainloop()
如果您使用此选项:

从tkinter导入*
将tkinter作为tk导入
随机输入
root=tk.tk()
root.title(“随机数生成器”)
def新_编号():
尝试:
下限=int(tb1.get())
上限=int(tb2.get())
断言上限>=下限,“确保下限为下限”
text.config(text=random.randint(下限、上限))
除断言错误外:
text.config(text=“Lower ABILOW必须是Lower”)
除值错误外:
text.config(text=“无效数据”)
tb1=条目(根)
tb2=条目(根)
tb1.网格(行=0,列=0)
tb2.网格(行=0,列=3)
text=tk.Label(根,text=“随机数”,font=(“次”,50))
text.grid(行=1,列=2)
按钮=tk.按钮(根,text=“新编号”,宽度=15,命令=新编号,
字体=(“时代”,50))
button.grid(行=2,列=2)
root.mainloop()

它将处理所有错误。

始终将完整错误作为格式化文本包含在问题中。在创建条目小部件大约一毫秒后,您将调用
tb1.get()
。它不会包含任何数据。请将
.insert(10,…)
更改为
.insert(“end”,…)
。我不知道你为什么在那里使用
10
。这毫无意义