大话性能 python 常见的几个基础知识

大话性能 · 2023年06月08日 · 2763 次阅读

1、运行 Python

1)交互式解释器
在命令行窗口执行 python 后,进入 Python 的交互式解释器。exit() 或 Ctrl + D 组合键退出交互式解释器。
2)命令行脚本
在命令行窗口执行 python script-file.py,以执行 Python 脚本文件。

2、指定解释器

如果在 Python 脚本文件首行输入 #!/usr/bin/env python,那么可以在命令行窗口中执行/path/to/script-file.py 以执行该脚本文件。
编码
默认情况下,3.x 源码文件都是 UTF-8 编码,字符串都是 Unicode 字符。也可以手动指定文件编码:
# -*- coding: utf-8 -*-
或者
# encoding: utf-8
注意: 该行标注必须位于文件第一行

3、代码注释

单行注释采用 #,多行注释采用'''或"""。

'''
这是多行注释
这是多行注释
'''

"""
这也是多行注释
这也是多行注释
"""

4、行与缩进

Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号 {}。 缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。缩进不一致,会导致运行错误。

多行语句

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠\来实现多行语句。
total = item_one + \
       item_two + \
       item_three
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠\。

5、print 输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""或别的非换行符字符串:
print('123') # 默认换行
print('123', end = "") # 不换行

6、__name__ = '__main__'的作用

很多新手刚开始学习 python 的时候经常会看到 python 中__name__ = __main__这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = '__main__'的作用,到底干嘛的?

有句话经典的概括了这段代码的意义:

“Make a script both importable and executable”

意思就是说让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行。
下面举例说明:

先写一个模块:
#module.py
def main():
print "we are in %s"%__name__
if __name__ == '__main__':
main()
这个函数定义了一个 main 函数,我们执行一下该 py 文件发现结果是打印出” we are in __main__“,说明我们的 if 语句中的内容被执行了,调用了 main():

但是如果我们从另我一个模块导入该模块,并调用一次 main() 函数会是怎样的结果呢?

thermodle.py
from module import main
main()
其执行的结果是:we are in module

但是没有显示” we are in __main__“,也就是说模块__name__ = '__main__'下面的函数没有执行。

这样既可以让 “模块” 文件运行,也可以被其他模块引入,而且不会执行函数 2 次。这才是关键。

总结一下:

如果我们是直接执行某个.py 文件的时候,该文件中那么”__name__ == '__main__'“是 True,但是我们如果从另外一个.py 文件通过 import 导入该文件的时候,这时__name__的值就是我们这个 py 文件的名字而不是__main__

这个功能还有一个用处:调试代码的时候,在” if __name__ == '__main__'“中加入一些我们的调试代码,我们可以让外部模块调用的时候不执行我们的调试代码,但是如果我们想排查问题的时候,直接执行该模块文件,调试代码能够正常运行!

更多内容可以学习《测试工程师 Python 工具开发实战》书籍

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册