Чи існує в Python аналог C
оператора препроцесора, такий як ?:
#define MY_CONSTANT 50
Крім того, у мене є великий список констант, які я хотів би імпортувати до кількох класів. Чи існує аналог оголошення констант як довгої послідовності тверджень, подібних до вищезазначених, у .py
файлі та імпортування їх до іншого .py
файлу?
Редагувати.
Файл Constants.py
читає:
#!/usr/bin/env python
# encoding: utf-8
"""
Constants.py
"""
MY_CONSTANT_ONE = 50
MY_CONSTANT_TWO = 51
І myExample.py
читає:
#!/usr/bin/env python
# encoding: utf-8
"""
myExample.py
"""
import sys
import os
import Constants
class myExample:
def __init__(self):
self.someValueOne = Constants.MY_CONSTANT_ONE + 1
self.someValueTwo = Constants.MY_CONSTANT_TWO + 1
if __name__ == '__main__':
x = MyClass()
Редагувати.
З компілятора,
NameError: "глобальне ім'я" MY_CONSTANT_ONE "не визначено"
функція init в myExample у рядку 13 self.someValueOne = Константи.MY_CONSTANT_ONE + 1 вивід копії Програма вийшла з кодом # 1 через 0,06 секунди.