python项目代码总结

  1. ext(0)这个一般在try-except-finally结构中使用,即:如果代码执行到最后没有报任何错误,则可以以无错误的形式退出,否则应该使用ext(1)

    print("show")
    try:
        sys.exit(0)
    except SystemExit as sys_exit:
        print(sys_exit)
        print('no error exit')
    finally:
        print('exit')
    
    """
    outputs:
    0
    no error exit
    exit
    """
    

    ① 如果使用的是os._exit(0)则直接会退出python解释器,也就是退出了python环境,不会执行后面的语句了
    ② 除了0以外的错误代码,可抛异常事件(也就是except IOError as e:)供捕获,具体怎么捕获,可以用if条件判断来触发相应的事件
    ③ 补充一下, 只有try下面的语句中有错误,才会去触发except否则直接执行finally,当然了如果你想在没有错误发生的情况下运行另一个代码,可以使用else

  2. 在pycharm中,如果想在含有argparser的情况下自动给参数赋值,可以:

    parser.add_argument('--hello', type=str, required=True, help="hello world~")
    

    使用required=True后,需要在pycharm或者vscode的参数配置中给出对应参数的赋值,如pycharm在Parameter中输入:--hello 'world'

    如果想创建互斥参数可以:

    parser = argparse.ArgumentParser()
    group = parser.add_mutually_exclusive_group(required=True)
    group.add_argument('--foo', action='store_true')
    group.add_argument('--bar', action='store_false')
    

    以上代码规定了,参数foo与参数bar只能输入一个,store_true表示触发时参数为True,未触发时为False

  3. datetime.now()输出当前系统的时间,datetime.utcnow()输出世界标准时间

  4. python函数同步和异步调用概念

  • 同步: 直接得到函数最终结果
  • 异步: 不直接得到函数最终结果
  1. partial的作用就是对已存在的函数进行名字上的封装,更易理解,如:

    add100 = partial(add,100)
    print(add100(100))
    
  2. p = subprocess.Popen('ls -l', shell=True)使用subprocess来在python中打开shell运行命令,并输出相应的运行结果

  3. Fire是一个Python库,只需对Fire进行一次调用即可将任何Python组件转变为命令行界面

  4. 什么是EXIF

  • 可交换图像文件格式(Exchangeable image file format,EXIF)
  • EXIF是数码相机拍照后,原始照片中保留的光圈、曝光度、GPS信息、拍摄机器、拍摄时间等重要信息,注意,在二次处理后,可能EXIF信息会丢失掉
  • 通过python可以读取到EXIF信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值