• python基础-------模块与包(四)


          configparser模块与 subprcess

    利用configparser模块配置一个类似于 windows.ini格式的文件可以包含一个或多个节(section),每个节可以有多个参数(键=值)。

    配置成这样一个文件

    [DEFAULT]
    ServerAliveInterval = 45
    Compression = yes
    CompressionLevel = 9
    ForwardX11 = yes

    [bitbucket.org]
    User = hg

    [topsecret.server.com]
    Port = 50022
    ForwardX11 = no

    用Python中的confiparser模块

    import configparser
    # cfp=configparser.ConfigParser() # {}
    # cfp["DEFAULT"]={"ServerAliveInterval":45,"Compression":"YES","CompressionLevel":9,"ForwardX11":"YES"}
    # cfp["bitbucket.org"]={"USER":"hg"}
    # cfp["topsecret.server.com"]={"Port ":5000123,"ForwardX11 ":"no"}
    # with open("cfp.ini","w") as f:
    # cfp.write(f)

    读的操作:

    import configparser

    cfp=configparser.ConfigParser()

    cfp.read("cfp.ini")

    ################################################

    # print(cfp.sections()) # 查相应字段的操作
    # print("topsecret.server.coms" in cfp)

    for key in config['bitbucket.org']: # 注意,有default会默认default的键

    print(key)

    print(config.options('bitbucket.org')) # 同for循环,找到'bitbucket.org'下所有键

    print(config.items('bitbucket.org')) #找到'bitbucket.org'下所有键值对

    print(config.get('bitbucket.org','compression')) # yes get方法取深层嵌套的值

    当我们需要调用系统的命令的时候,最先考虑的os模块。用os.system()和os.popen()来进行操作。但是这两个命令过于简单,不能完成一些复杂的操作,如给运行的命令提供输入或者读取命令的输出,判断该命令的运行状态,管理多个命令的并行等等。这时subprocess中的Popen命令就能有效的完成我们需要的操作。

    import subprocess

    s=subprocess.Popen("dir",shell=True,stdout=subprocess.PIPE)#在windos下必须得配置shell=True

    print(s.stdout.read().decode("gbk"))

    在linux下:

    import subprocess

    subprocess.Popen('ls -l',shell=True)

    subprocess.Popen(['ls','-l'])
  • 相关阅读:
    59
    58
    57
    56
    55
    54
    53
    转 Using $.ajaxPrefilter() To Configure AJAX Requests In jQuery 1.5
    jquery用正则表达式验证密码强度
    什么是高内聚、低耦合?(转载)
  • 原文地址:https://www.cnblogs.com/niubin/p/7087381.html
Copyright © 2020-2023  润新知