Найти - Пользователи
Полная версия: Преобразование строки в переменную
Начало » GUI » Преобразование строки в переменную
1
Ser5+
Доброе утро форумчане. Вопрос про преобразование строки в переменную,насколько правильно я решил задачу или можно было сделать по другому? В интернете пишут,что небезопасно использовать такое преобразование. Вот решил узнать,а как можно по другому создать в цикле переменные?

Например:
 y=5
zn_spisok=['dfg','assa','gfhgdaa',...]
for row in range(0,20):
     self.input = QtWidgets.QLineEdit(parent=self.Dialog)
     self.input.resize(250,20)
     self.input.move(180,y)
     self.input.setText(zn_spisok[row])
y += 20

После создания несколько инпутов не могу получить данные,так как везде имя переменные одинаковые ‘self.input’

И тогда я решил преобразовывать строки в переменную и результат будет self.input1,self.input2…то что надо и могу извлекать данные print(self.input1.text())
 y = 5
i = 1
zn_spisok=['dfg','assa','gfhgdaa',...]
for row in range(0,20):
     inp = 'self.input'+str(i)
     exec(inp+'=QtWidgets.QLineEdit(parent=self.Dialog)')
     exec(inp+'.resize(250,20)')
     exec(inp+'.move(180,y)')
     exec(inp+'.setText(zn_spisok[row])')
y += 20
i += 1
FishHook
Товарищ, вы же знаете что такое список

 zn_spisok=['dfg','assa','gfhgdaa',...]
вы его даже применяете.

И тут приходит в голову мысля, а почему бы не собрать множество инпутов в список или в словарь?
Ser5+
Ок допустим впихну в список inp2=
И потом в цикле
 inp2[i]=QtWidgets.QLineEdit(parent=self.Dialog)
inp2[i].resize(250,20)
inp2[i].move(180,y)
inp2[i].setText(zn_spisok[row])

И как теперь извлекать данные? Пробовал и self.input1.text() и inp2.text()
Ser5+
Ок допустим впихну в список
 inp2=['self.input1','self.input2','self.input3'.....]
И потом в цикле
 inp2[i]=QtWidgets.QLineEdit(parent=self.Dialog)
inp2[i].resize(250,20)
inp2[i].move(180,y)
inp2[i].setText(zn_spisok[row])

И как теперь извлекать данные? Пробовал и self.input1.text() и inp2.text()
Да и скорее всего на место
 inp2[i]
будет строка,а не переменная.
Ser5+
В принципе вопрос закрыт. Забыл,что в список еще можно объекты записывать.
Johapaf
Generic! Comfort. Joy.
<a href=https://usabuyciali.com>order cialis overnight delivery</a>


See you later in USA
<a href=https://usabuyciali.com>Buy Cialis cheap</a>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB