Форум пользователей ПО АСКОН

Профессиональные вопросы => Программирование приложений => Тема начата: bionorica2015 от 31.10.21, 10:37:41

Название: Переменное название переменной python
Отправлено: bionorica2015 от 31.10.21, 10:37:41
Добрый день
Как в пайтоне осуществить такое написание переменных:
i=input()

var1=1
var2=2
var3=3
итд jn 1 до i
Создавать в текстовом редакторе 1000 переменных сложно.
Именно в редакторе, а не в консоли  должны циклом написаться var{i}=i
Спасибо!
Название: Re: Переменное название переменной python
Отправлено: Михаил88 от 31.10.21, 12:17:38
в одной директории с запускаемым файлом py создается файл test.txt c переменными и их значениями записанными построчно

lines = input('Укажите количество переменных:')

with open('test.txt', 'w') as file:
    file.writelines("%s\n" % f'var{line}={line}' for line in range(1, int(lines)+1))

так выводить в консоль:

lines = input('Укажите количество переменных:')

[print(f'var{line}={line}') for line in range(1, int(lines)+1)]
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 31.10.21, 14:45:53
Цитата: Михаил88 от 31.10.21, 12:17:38в одной директории с запускаемым файлом py создается файл test.txt c переменными и их значениями записанными построчно

lines = input('Укажите количество переменных:')

with open('test.txt', 'w') as file:
    file.writelines("%s\n" % f'var{line}={line}' for line in range(1, int(lines)+1))

так выводить в консоль:

lines = input('Укажите количество переменных:')

[print(f'var{line}={line}') for line in range(1, int(lines)+1)]
Цитата: Михаил88 от 31.10.21, 12:17:38в одной директории с запускаемым файлом py создается файл test.txt c переменными и их значениями записанными построчно

lines = input('Укажите количество переменных:')

with open('test.txt', 'w') as file:
    file.writelines("%s\n" % f'var{line}={line}' for line in range(1, int(lines)+1))

так выводить в консоль:

lines = input('Укажите количество переменных:')

[print(f'var{line}={line}') for line in range(1, int(lines)+1)]
Сохранил и запустил через консоль: вылетает консоль
Файл test.txt создавал.
Название: Re: Переменное название переменной python
Отправлено: Михаил88 от 31.10.21, 15:12:35
test.rar
test2.rar

У меня все работает и не вылетает
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 31.10.21, 15:26:34
Цитата: Михаил88 от 31.10.21, 15:12:35test.rar
test2.rar

У меня все работает и не вылетает
ничего не получилось
Запускаю выдает ошибку encoding
Название: Re: Переменное название переменной python
Отправлено: Михаил88 от 31.10.21, 15:33:33
а какой версии python?

записать 1 строчкой
# -*- coding: utf-8 -*
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 31.10.21, 18:51:34
Цитата: Михаил88 от 31.10.21, 15:33:33а какой версии python?

записать 1 строчкой
# -*- coding: utf-8 -*
3.8.3
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 10.11.21, 05:36:11
Цитата: Михаил88 от 31.10.21, 12:17:38в одной директории с запускаемым файлом py создается файл test.txt c переменными и их значениями записанными построчно

lines = input('Укажите количество переменных:')

with open('test.txt', 'w') as file:
    file.writelines("%s\n" % f'var{line}={line}' for line in range(1, int(lines)+1))

так выводить в консоль:

lines = input('Укажите количество переменных:')

[print(f'var{line}={line}') for line in range(1, int(lines)+1)]
А как можно обходить тот момент когда тип данных равен none, и нужно перейти к следующей ячейке.
А текущую просто оставить пустым?
Название: Re: Переменное название переменной python
Отправлено: Михаил88 от 10.11.21, 21:44:31
Цитата: bionorica2015 от 10.11.21, 05:36:11А как можно обходить тот момент когда тип данных равен none, и нужно перейти к следующей ячейке.
А текущую просто оставить пустым?

простой пример

cells = [20, 50, 90, None, 100, 95]

for cell in cells:
    if cell == None:
        continue
    print(cell)
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 11.11.21, 04:56:32
Цитата: Михаил88 от 10.11.21, 21:44:31простой пример

cells = [20, 50, 90, None, 100, 95]

for cell in cells:
    if cell == None:
        continue
    print(cell)
Спасибо Вам огромное!
Название: Re: Переменное название переменной python
Отправлено: Slaviation от 11.11.21, 08:00:24
Добрый день.
Еще лучше if cell is None:
       
Название: Re: Переменное название переменной python
Отправлено: Вират Лакх от 11.11.21, 11:29:55
Или так:
cells = [20, 50, 90, None, 100, 95]
for cell in cells:
    if cell:
        print(cell)
Название: Re: Переменное название переменной python
Отправлено: bionorica2015 от 16.11.21, 05:47:09
Цитата: Михаил88 от 10.11.21, 21:44:31простой пример

cells = [20, 50, 90, None, 100, 95]

for cell in cells:
    if cell == None:
        continue
    print(cell)
Здравствуйте
Как могу получить внутри цикла for x значение переменной с?:
str1=1
str2=100
n=int(input('vvedite kolichestvo: '))
r=7
while str1<str2:
  str1=str1+1
  for i in range(n):#4
    i=i+1#3
    globals()['summ{}'.format(r+i)] = r+i
    c=globals()['summ{}'.format(r+i)]
    print(c)
        for x in range(1, c+1):
           print(f"6 and {((x-1)%10)+1} and {(x - 1) // 10} and {с}")
Благодарю заранее!
Название: Re: Переменное название переменной python
Отправлено: Михаил88 от 16.11.21, 06:22:11
Screenshot_1.png
доброе утро.
у вас переменная с написана не латиницей вот и не работает. Везде выше она же прописана латиницей.
Вам же выводится ошибка NameError: name 'с' is not defined
Вот питон и не может ее найти т.к. переменная с таким именем не существует