Python - указание имен файлов в цикле for

Я хотел бы повторить сценарий Python по набору переменных данных. У меня есть переменные входных данных с именами data_X, data_Y и т. д., Которые определены в начале моего скрипта, например data_X = [1, 2, 5, 42, 793]. В bash я мог бы просто использовать «$ X», чтобы указать, что мне нужна строка, поэтому я ищу эквивалент Python. Когда я пытаюсь

for variable in ['X', 'Y']:
run_data = 'data_' + variable 

что происходит, так это то, что run_data теперь равна строке data_X, но не равна фактическим данным, которые я ранее определил как data_X

Как мне указать, что я хочу, чтобы run_data равнялся значениям, изначально присвоенным data_X?

в идеале что-то вроде эквивалента bash "$ X"

Alison 13.08.2018 13:25

Проверьте флажок дублирования вверху страницы.

ech0 13.08.2018 13:25

отредактировано, чтобы прояснить

Alison 13.08.2018 13:40

В for variable in ['X', 'Y']: вы обращаетесь к переменным X и Y. У вас нет переменных с именами X или Y. У вас есть переменные с именами data_X и data_Y. Вы пробовали использовать имена переменных?

ech0 13.08.2018 13:41

Позже в скрипте мне нужно вызвать только 'X' и 'Y' для вывода, поэтому я не хочу иметь кучу ненужного текста в именах

Alison 13.08.2018 15:57

Что ж, если вы хотите получить доступ к переменной, вы должны называть ее по имени. Например, если я создаю строку с именем helloWorld и назначаю ее как Hello World! :), а затем я пытаюсь сказать print(hello), она не будет работать, потому что она не назначена. В этом случае вы просматриваете список, содержащий значения X и Y, что делает ваши переменные data_X и data_Y нерелевантными, и вы также можете удалить их, если это то, что вы хотите.

ech0 14.08.2018 08:10
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
6
35
0

Другие вопросы по теме