zoukankan      html  css  js  c++  java
  • subprocess模块和configparser模式

    subprocess模式

    import subprocess
    obj=subprocess.Popen('dir',shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
    res1=obj.stdout.read()                         #(正确往这个管道丢)            (错误往这个管到丢)
    print('正确',res1.decode('utf-8'))#(只能取一次)
    res2=obj.stderr.read()
    print('错误',res2.decode('utf-8'))

     dos命令(了解一下就好)

     tasklist | findstr python
    # taskkill /?
    #D:code>tasklist | findstr python
    # python.exe                   12360 Console                    1     11,024 K
    #
    # D:code>taskkill /F /PID 12360
    
    
    # linux系统(了解)
    # ps aux | grep python
    # kill -9 PID

    cmd命令(了解一下就好)

    import os
    while True:
        cmd=input('>>>: ').strip()
        if not cmd:continue
         # print('%s run' %cmd)
         res=os.system(cmd)
    
        # network.send(res)

    import os
    #
    # res=os.system('dixCVr')
    # print('运行结果:',res)

    
    

    configparser模式

    # 注释1
    ; 注释2
    
    [section1]
    k1 = v1
    k2:v2
    user=egon
    age=18
    is_admin=true
    salary=31
    
    [section2]
    k1 = v1

    读取

    import configparser
    
    config=configparser.ConfigParser()
    config.read('a.cfg')
    
    #查看所有的标题
    res=config.sections() #['section1', 'section2']
    print(res)
    
    #查看标题section1下所有key=value的key
    options=config.options('section1')
    print(options) #['k1', 'k2', 'user', 'age', 'is_admin', 'salary']
    
    #查看标题section1下所有key=value的(key,value)格式
    item_list=config.items('section1')
    print(item_list) #[('k1', 'v1'), ('k2', 'v2'), ('user', 'egon'), ('age', '18'), ('is_admin', 'true'), ('salary', '31')]
    
    #查看标题section1下user的值=>字符串格式
    val=config.get('section1','user')
    print(val) #egon
    
    #查看标题section1下age的值=>整数格式
    val1=config.getint('section1','age')
    print(val1) #18
    
    #查看标题section1下is_admin的值=>布尔值格式
    val2=config.getboolean('section1','is_admin')
    print(val2) #True
    
    #查看标题section1下salary的值=>浮点型格式
    val3=config.getfloat('section1','salary')
    print(val3) #31.0

    改写

    import configparser
    
    config=configparser.ConfigParser()
    config.read('a.cfg',encoding='utf-8')
    
    
    #删除整个标题section2
    config.remove_section('section2')
    
    #删除标题section1下的某个k1和k2
    config.remove_option('section1','k1')
    config.remove_option('section1','k2')
    
    #判断是否存在某个标题
    print(config.has_section('section1'))
    
    #判断标题section1下是否有user
    print(config.has_option('section1',''))
    
    
    #添加一个标题
    config.add_section('egon')
    
    #在标题egon下添加name=egon,age=18的配置
    config.set('egon','name','egon')
    config.set('egon','age',18) #报错,必须是字符串
    
    
    #最后将修改的内容写入文件,完成最终的修改
    config.write(open('a.cfg','w'))
  • 相关阅读:
    Eclipse常用插件汇总
    关于销售订单
    java下载文件的种方式
    左右对联
    链表
    Spring MVC 入门
    JAVA环境配置总结
    struts2 iterator判断奇偶
    保存页面的浏览记录
    心扬JS分页
  • 原文地址:https://www.cnblogs.com/wuchenyu/p/8779184.html
Copyright © 2011-2022 走看看