https://devguide.python.org/versions/
<aside>
开发项目的最佳实践:
容器化技术:不仅完成operation的工作,而且用代码固定operation工作的环境。
集群+CI/CD:
容器+nix
容器 + terraform + nomad
代码即基础设施,开发部署运维全方位自动化。
</aside>
基础知识
Class in python https://docs.python.org/3/tutorial/classes.html
Class Object | Class instantiation | attribute references (data attributes and methods)
Method Objects : class variables || instance variables
Inheritance: override methods | (For C++ programmers: all methods in Python are effectively virtual.) | isinstance() issubclass()
Multiple Inheritance | name mangling (“Private” instance variables) | **dataclasses**
Iterators: iter() → __iter__() | next() → __next__() → StopIteration | **Generators→yield**
Python的命名规范:
Python文档规范
https://github.com/astral-sh/uv.git
文件读写
# Create log directory and file path using pathlib
logs_dir = Path(__file__).parent / 'logs'
logs_dir.mkdir(exist_ok=True)
log_filename = f'VGONZchaintest_nqd{n_qubits}_L{n_layers}_phase_{year_month_day}.log'
log = logs_dir / log_filename
logger = Logger(log)
<aside>
高频场景:进度条 ,或print+核心数据;避免大量IO/内存写入
关键步骤:Logging(2console + 2file)保存时间、唯一分辨信息,避免似是而非或无法追踪。
数据留痕:CSV JSON 格式适合人机,YAML格式适合大量配置,.env 格式适合运行参数,parquet 格式适合数据库形式保存。 </aside>
example Logger
延申:Pythonic
for循环 vs iteration 迭代器(class with **next()** iter()):高效遍历,节省内存,流式编程;
适合有规律演化的循环,将规律抽象成迭代器。itertools.chain itertools.islice itertools.chain itertools.cycle itertools.count itertools.zip_longest