相关疑难解决方法(0)

如何创建可变数量的变量?

如何在Python中完成变量变量?

这是一个精心设计的手动条目,例如:变量变量

我听说这是一个坏主意,但它是Python中的一个安全漏洞.真的吗?

python variable-variables

315
推荐指数
13
解决办法
12万
查看次数

动态设置局部变量

你如何在Python中动态设置局部变量?

(变量名称是动态的)

更新:我知道这不是一个好的做法,而且这些言论是合法的,但这不是一个坏问题,只是一个更理论的问题 - 我不明白为什么这证明了这一点.

python dynamic

97
推荐指数
3
解决办法
6万
查看次数

为什么不能在python中动态生成变量名?

现在我正在学习Python并且正在努力学习OOP的一些概念,其中之一是(对我来说)动态初始化类实例并将它们分配给动态生成的变量名称是多么困难以及为什么我在阅读我不应该'首先要做到这一点.

在大多数具有类似方向的线程中,答案似乎是它不是Pythonic.

例如,在python中生成变量名称

有人可以详细说明吗?

以典型的OOP学习案例为例:

LOE = ["graham", "eric", "terry_G", "terry_J", "john", "carol"]
class Employee():
    def __init__(self, name, job="comedian"):
        self.name = name
        self.job = job
Run Code Online (Sandbox Code Playgroud)

为什么这样做更好:

employees = []
for name in LOE:
    emp = Employee(name)
    employees.append(emp)
Run Code Online (Sandbox Code Playgroud)

然后

for emp in employees:
    if emp.name == "eric":
        print(emp.job)
Run Code Online (Sandbox Code Playgroud)

而不是这个

for name in LOE:
    globals()[name] = Employee(name)
Run Code Online (Sandbox Code Playgroud)

print(eric.job)
Run Code Online (Sandbox Code Playgroud)

谢谢!

python oop

5
推荐指数
1
解决办法
71
查看次数

tkinter创建标签并动态托管

我想创建一个简单的GUI,我可以输入一些值.前面和下面的标签以及启动脚本的按钮.

我使用的是这样的东西:

w = Label(master, text="weight:")
w.grid(sticky=E)
w = Label(root, text="bodyfathydrationmuscle:bones")
w.grid(sticky=E)
w = Label(root, text="hydration:")
w.grid(sticky=E)
Run Code Online (Sandbox Code Playgroud)

没关系,但我想做动态.当我将w用于所有的命令时,我只能施放一次.但我需要我所有的数据;-)

我在考虑:

  def create_widgets(self):
    L=["weight","bodyfat","hydration","muscle","bones"]
    LV=[]
    for index in range(len(L)):
        print(index)
        print(L[index])
        ("Entry"+L[index])= Entry(root)
        ("Entry"+L[index]).grid(sticky=E)
        ("Label"+L[index])=Label(root, text=L[index])
        ("Label"+L[index]).grid(row=index, column=1)
Run Code Online (Sandbox Code Playgroud)

稍后打电话:

var_weight=Entryweight.get()
var_bodyfat=Entrybodyfat.get()
Run Code Online (Sandbox Code Playgroud)

等等.我怎么能让它发挥作用?

python tkinter

1
推荐指数
1
解决办法
1万
查看次数

命名列表列表

我需要在python脚本中创建一个命名列表列表.

我想要做的是创建一个mklist方法,该方法将在列表中获取字符串并创建为每个字符串命名的列表.所以,从这里:

a = "area"

for i in range(1, 37):
    x = str(a) + str("%02d" % (i,))
    ' '.join(x.split())
Run Code Online (Sandbox Code Playgroud)

我想得到以下内容:

area01 = []
area02 = []
area03 = []
area04 = []
area05 = []
area06 = []
area07 = []
area08 = []
area09 = []
area10 = []
area11 = []
area12 = []
area13 = []
area14 = []
area15 = []
area16 = []
area17 = []
area18 = []
area19 = []
area20 = [] …
Run Code Online (Sandbox Code Playgroud)

python list

1
推荐指数
1
解决办法
707
查看次数

基于变量名称解压缩

我想解压缩像:

one, two, three, four = unpack(this_dict)
Run Code Online (Sandbox Code Playgroud)

哪里

this_dict = {'one': 1, 'two': 2, 'three': 3, 'four': 4}
Run Code Online (Sandbox Code Playgroud)

我唯一的问题是unpack需要知道它将分配给哪些名字.你是如何在python中做到这一点的?谢谢

python python-2.7 python-3.x

0
推荐指数
1
解决办法
85
查看次数