python_tricks

python参数灵活性

位置参数 + 默认参数 + *args + **kwargs

语法 作用
*args 收集所有 位置参数,组成元组
**kwargs 收集所有 关键字参数,组成字典
1
2
3
4
5
def func(a, b=2, **kwargs):
print(a, b, kwargs)

func(1, c=3, d=4)
# 输出:1 2 {'c': 3, 'd': 4}

返回值灵活性

Python 函数没有固定返回类型。可以返回任意对象:数字、字符串、列表、字典、对象,甚至函数本身。调用方只要按照约定处理即可

1
2
3
4
5
6
def example(x):
if x > 0:
return [1,2,3]
else:
return "negative"

虚拟环境的使用

  • 创建虚拟环境
    1
    python3.14 -m venv .venv
  • 终端激活虚拟环境
    1
    2
    3
    source .venv/bin/activate
    python --version
    which python

导出第三方依赖

  • 激活虚拟环境
  • 使用 pip freeze 导出
    1
    pip freeze --local > requirements.txt
  • 复现环境
    1
    2
    pip install -r requirements.txt

打包

1
2
3
4
5
6
7
pip install pyinstaller

pyinstaller \
--windowed \
--name MyApp \
main.py

  • macos
    1
    2
    3
    4
    5
    brew install create-dmg

    create-dmg \
    MyApp.app \
    dist/
    生成
    1
    dist/MyApp.dmg