zoukankan      html  css  js  c++  java
  • Python-常用模块

    一、os模块

    1、常用的方法

    import os
    print(os.getcwd())   #打印当前路径,显示绝对路径
    os.mkdir('test1')    #创建文件夹
    os.remove('test.py') #只能删文件
    print(os.listdir( '.')) #打印目录下的所有文件和文件夹
    os.rename(old,new)   #修改文件名字
    print(os.path.split('D:pythonday5os模块.py'))    #分割路径和文件名,保存在元组
    print(os.path.dirname('D:pythongday5os模块.py')) #获取父目录
    print(os.path.exists('D:pythonday5os模块.py'))   #判断文件或路径是否存在
    print(os.path.isfile('D:pythonday5os模块.py'))   #判断是否是文件
    print(os.path.isdir('D:pythongday5os模块.py'))   #判断是否是路径
    print(os.path.join(r'D:pythonday5','os模块.py'))  #拼接路径

    2、其他方法

    import os
    print(os.curdir)   #打印相对路径
    os.chmod('path',7) #修改文件或目录权限
    print(os.chdir('C:\')) #更改当前目录
    os.makedirs(r'D:pythonday6	est1') #递归创建文件夹,父目录不存在时创建父文件夹
    os.rmdir('path')   #只能删除空文件夹
    print(os.sep)      #系统路径分隔符
    print(os.linesep)  #系统换行符
    d = {}
    d['换行符'] = os.linesep
    print(d)
    print(os.pathsep)  #环境变量之间的分隔符
    print(os.path.abspath(__file__)) #当前文件的绝对路径
    print(os.name)     #系统名称
    print(os.path.dirname("/usr/local/a.txt"))  #获取父目录
    print(os.path.basename("/usr/local"))  #获取最后一级,如果是文件显示文件名,如果是目录显示目录名
    print(os.path.isabs("."))  #判断是否是绝对路径
    
    print(os.path.getatime("len_os.py"))  #打印最近访问时间
    print(os.path.getmtime("len_os.py"))  #打印最近修改时间
    print(os.path.getctime("len_os.py"))  #打印创建时间

    3、system() 和 popen()

    res = os.system('ipconfig')#执行操作系统命令,但是不会返回结果
    print(res)
    
    res = os.popen('ipconfig') #返回命令结果
    print(res)                 #res保存一个内存地址
    print(res.read())          #用read()函数读取内容

    二、sys模块

    import sys
    print(sys.argv)   #获取命令行参数,第一个参数是当前文件的路径
    print(sys.path)   #python环境变量
    sys.path.append(__file__)   #添加临时环境变量,在path的最后追加当前文件的路径
    sys.path.insert(0,__file__) #添加临时环境变量,在path的最前添加当前文件的路径
    sys.exit(0)       #正常退出程序

    三、random模块

    import random, string
    letters = string.ascii_letters
    print(random.sample(letters, 8))#从letters中随机取8个组成一个list
    print(random.choice([1, 2, 3])) #随机取一个元素
    print(random.random())          #返回一个(0,1)之间的随机值
    print(random.randint(1,5))      #返回一个[1,5]之间的随机值
    print(random.randrange(1,5))    #返回一个[1,5)之间的随机值
    str1 = [1, 2, 3, 4, 5]
    random.shuffle(str1)            #随机打乱原有list的顺序
    print(str1)

    四、pickle 和 json模块

    import pickle, json
    
    org = {'1':'A'}
    str1 = pickle.dumps(org)  #将python基础数据类型转化为仅python可识别的bytes类型
    print('str1 = pickle.dumps(org) = ', str1, 'type(str1) = ', type(str1))
    print('pickle.loads(str1) = ', pickle.loads(str1)) #将仅python可识别的bytes类型转化为python基础数据类型
    with open('result.pk','wb') as f: #将python基础数据类型转化为仅python可识别的bytes类型写入文件;文件必须用二进制方式打开,否则报错
        pickle.dump(org, f)
    with open('result.pk','rb') as f: #读取pk文件,并转化为python基础数据类型
        print('pickle.load(f) = ', pickle.load(f))
    
    str2 = json.dumps(org)  #将python基础数据类型转化所有语言可识别的字符串
    print('str2 = json.dumps(org) = ', json.dumps(org), 'type(str2) = ', type(str2))
    print('json.loads(str2) = ', json.loads(str2)) #将字符串转化为python基础数据类型
    with open('result.json', 'w',encoding='UTF-8') as f: #将python基础数据类型转化所有语言课识别的字符串,并写入文件
        json.dump(org, f, ensure_ascii=False) #ensure_ascii=False可在文件中写入中文
    with open('result.json', 'r') as f: #读取json文件,并转化为python基础数据类型 
        print('json.load(f) = ', json.load(f))
  • 相关阅读:
    LintCode-Search for a Range
    LintCode-Serialization and Deserialization Of Binary Tree
    LeetCode-Reverse Words in a String
    LeetCode-Reorder List
    LeetCode-Word Break
    LeetCode-Word Ladder
    LeetCode-Valid Palindrome
    cf div2 237 D
    POJ 1759
    cf div2 238 D
  • 原文地址:https://www.cnblogs.com/jessicaxu/p/7708232.html
Copyright © 2011-2022 走看看