zoukankan      html  css  js  c++  java
  • Python 开发日志总结一

    开发中常用Debug Trips

    打印技巧

    在开发中调试中经常打印 json 字符串为了在屏幕上看着更美观舒服

    json 字符串对象

    import json
    
    string = '{"name": "张三", "age": "10"}'
    print(json.dumps(string, indent=4))
    
    # out
    {
      "name": "张三",
      "age": "10"
    }
    

    编码规范

    为了更符合pep8 等规范

    • 在venv 环境中, 安装 autopep8, isort 扩展

      在项目创建 .isort.cfg 配置文件

      [settings]
      # https://github.com/danielfrg/word2vec/blob/master/pyproject.toml
      #
      # 最长度 119
      line_length=119
      multi_line_output=3
      # length_sort=1
      # 不存在该配置项
      # length_sort_stdlib=1
      
      # known_future_library=future,pies
      # known_standard_library=std,std2
      # 导包顺序
      # known_first_party=libs,source.controller,source.models,source.views.schema
      
      # sections=FUTURE,STDLIB,THIRDPARTY,FIRSTPARTY,LOCALFOLDER
      
      # default_section=THIRDPARTY
      # no_lines_before=LOCALFOLDER
      #
      
      lines_after_imports = 2
      force_grid_wrap = 0
      include_trailing_comma =1
      use_parentheses = 1
      
    (venv) autopep8 --in-place --aggressive --aggressive file.py file2.py
    
    (venv) isort file.py file2.py
    

    这些繁琐操作, 可以增加git hook

    解析 url 内容

    • python2

      from urlparse import urlparse
      
      parsed_url = urlparse("https://stackoverflow.com/questions/10113090/best-way-to-parse-a-url-query-string/39841923")
      
      # out
      ParseResult(scheme='https', netloc='stackoverflow.com', path='/questions/10113090/best-way-to-parse-a-url-query-string/39841923', params='', query='', fragment='')
      
    • python3

      # urllib.parse 模块提供了一系列用于操纵 URLs 地址及其各组成部分的函数,这些函数或者用于拆分或者用于组装。
      
      from urllib.parse import urlparse
      
      
      parsed_url = urlparse("https://stackoverflow.com/questions/10113090/best-way-to-parse-a-url-query-string/39841923")
      
      
      ParseResult(scheme='https', netloc='stackoverflow.com', path='/questions/10113090/best-way-to-parse-a-url-query-string/39841923', params='', query='', fragment='')
      

      将 URL 拆分为各组成部分

      参考:

      RFC 1738 统一资源定位 (URL) 的语法

      RFC 1808 相对 URLs

      RFC 2396 统一资源标识符 (URI) 的一般语法

      RFC 3986 统一资源标识符 (URI) 的语法

  • 相关阅读:
    体验用yarp连接websocket
    从 ASP.NET Core 5.0 迁移到.NET 6
    对接网易云信音视频2.0呼叫组件集成到vue中,实现web端呼叫app,视频语音通话。
    .NET6 WebAPI 自定义过滤器
    .NET6 WebApi 获取访问者IP地址
    .NET6 部署到 IIS
    .NET6 WebApi JSON传到前台默认变成小驼峰
    开发环境 测试环境 生产环境
    .NET6 WebApi 使用 log4net
    .NET6 WebApi 解决跨域问题
  • 原文地址:https://www.cnblogs.com/SkyForce/p/14580451.html
Copyright © 2011-2022 走看看