Я знаю, что константы в Python более конвенции пока я попал в спор с коллегой программист по следующей строке:Конвенция: Сохранение функции функции Python в константе?
FILE = open("file.txt").readlines()
С FILE
позже используются несколько раз, например в a for line in FILE
Мы хотим скопировать как можно лучше. Я считаю, FILE
должен никогда не быть объявлен как константа, потому что он полагается на вывод функций open()
и readlines()
. Однако контраргумент заключается в том, что FILE
никогда не изменяется в нашей программе, поэтому ведет себя как константа. Который из них?
Исключения в сторону, не должна ли она быть переменной, то есть записана как переменная в соответствии с соглашениями об именах, поэтому file
во всех строчных строках?
Python не имеет констант. Какой случай вы используете для обозначения ваших переменных, абсолютно не имеет отношения к интерпретатору. – jwodder
@jwodder Он явно ссылается на [PEP8] (https://www.python.org/dev/peps/pep-0008/#constants) руководство о константах. Я добавил соответствующий тег. – Barmar
Я не понимаю, почему это не может быть константой. Некоторые хорошо принятые константы будут 'XXX =" foo "+" bar "'. Это также вычисляется, но явно константа. Небольшая разница здесь в том, что список изменчив. Строка не является (но ссылка также может быть сбита) –