Post

Python UtilCmd

常用的工具命令

  1. pip:Python 包管理器,可用于安装、升级和卸载 Python 模块。

  2. virtualenv:虚拟环境管理器,可用于创建和管理 Python 虚拟环境,使不同项目的依赖包互不干扰。

  3. pytest:用于编写和运行 Python 单元测试的工具,支持测试自动发现和参数化测试等功能。

  4. pylint:Python 代码静态分析工具,可用于检查代码风格、格式、错误和一致性等问题。

  5. autopep8:Python 代码格式化工具,可用于自动调整代码缩进、空格、引号和换行符等格式问题。

  6. coverage:代码覆盖率工具,可用于确定代码中哪些部分被测试覆盖了,以及哪些部分需要更多测试。

  7. Flask/Django/Pyramid:Python 网络应用框架,可用于快速构建 Web 应用程序。

使用示例

  1. pip

    • 安装模块:
      1
      
      pip install <module_name>
      
    • 升级模块:
      1
      
      pip install --upgrade <module_name>
      
    • 卸载模块:
      1
      
      pip uninstall <module_name>
      
    • 查看已安装的模块列表:
      1
      
      pip list
      
  2. virtualenv

    • 创建虚拟环境:
      1
      
      python -m venv <venv_name>
      
    • 进入虚拟环境:
      1
      
      source <venv_name>/bin/activate
      
    • 退出虚拟环境:
      1
      
      deactivate
      
  3. pytest

    • 运行单元测试:
      1
      
      pytest <test_file_or_dir>
      
    • 测试自动发现:
      1
      
      pytest --collect-only
      
    • 参数化测试:
      1
      2
      3
      4
      5
      6
      
      import pytest
      
      @pytest.mark.parametrize("test_input, expected_output",
                               [(3, 6), ('hello', 'hellohello'), (2.5, 5)])
      def test_multiply_by_two(test_input, expected_output):
          assert test_input * 2 == expected_output
      
  4. pylint

    • 检查代码文件:
      1
      
      pylint <file_name>
      
    • 生成 HTML 报告:
      1
      
      pylint --output-format=html <file_name> > report.html
      
    • 禁用特定错误或警告:
      1
      
      pylint --disable=<error_code> <file_name>
      
  5. autopep8

    • 格式化 Python 文件:
      1
      
      autopep8 --in-place <file_name>
      
    • 格式化整个目录下所有 Python 文件:
      1
      
      autopep8 --in-place --recursive <directory_name>
      
  6. coverage

    • 运行测试并生成覆盖率报告:
      1
      2
      
      coverage run -m pytest <test_file_or_dir>
      coverage html
      
  7. Flask/Django/Pyramid

    • 创建新项目:
      1
      2
      3
      
      django-admin startproject <project_name>
      flask init <project_name>
      pcreate --scaffold=alchemy <project_name>
      
    • 启动开发服务器:
      1
      2
      3
      
      python manage.py runserver
      flask run
      pserve development.ini
      
This post is licensed under CC BY 4.0 by the author.