python - 如何在 python tkinter 中将一个函数的数组用于另一个函数?
问题描述
我想在函数中生成一个随机数组。之后,我想在另一个函数中对该数组进行排序。如何在第二个函数中访问数组?
from tkinter import *
import array as arr
import numpy as np
import random
root = Tk()
Array_Size=IntVar()
Minim_Elem=IntVar()
Maxim_Elem=IntVar()
def Genera_Array():
ArraySize=Array_Size.get()
MinimumElement=Minim_Elem.get()
MaximumElement=Maxim_Elem.get()
Arr=[ArraySize]
for H in range(0, ArraySize):
Arr.append(random.randint(MinimumElement,MaximumElement))
for A in range(0,ArraySize):
Output_1.insert(END,Arr[A])
Output_1.insert(END, " ")
return Arr,ArraySize
def QuickSort():
print("Array before sorting")
for A in range(0,ArraySize):
print(Arr[ArraySize], end=" ")
Gene_Array=Button(text="Generate Array", command=Genera_Array)
Gene_Array.pack()
Gene_Array.place(x=295,y=245, width=240,height=40)
Quick=Button(text="Quick Sort", command=QuickSort)
Quick.pack()
Quick.place(x=410,y=410, width=120,height=40)
Output_1=Text(root, width=56, height=3, bd=5, font=("Time new roman",12,"bold"))
Output_1.place(x=150,y=300)
root.mainloop()
解决方案
您需要将数据传递给
def Quicksort(ArrazSize):
用于lambda
在函数中传递参数
在Gene_Array=Button(text="Generate Array", command=lambda: QuickSort(Arraysize))
从获取数据后
Gene_Array
推荐阅读
- pine-script - 如何跟上intra-bar中的第一个绘图标签?
- angular - 角度测试:如何模拟服务响应?
- r - R中的循环功率包络
- node.js - 为什么我的 DJS 机器人找不到我的命令文件夹?
- javascript - vuejs 语法的正则表达式匹配
- r - 当输入流中的列数发生变化时,我正在尝试将 ascii 文本文件拆分为多个数据(帧/表)
- html - jquery如何设置数组的键值
- android - 如何以编程方式将横幅 Adview 放在底部?
- github - 是什么决定了在 github 操作中触发“respository_dispatch”的用户
- perl - perl 得到 0 而不是输出