首页 > 代码库 > Python基础之模块

Python基础之模块

一.os模块

1.os.path.abspath(path),返回path规范化的绝对路径

import os
print(os.path.abspath(r"D:\a\新建文本文档.txt")) 
"""
D:\a\新建文本文档.txt
"""

 2.os.path.split(path),将path分割成目录和文件名二元组返回

print(os.path.split(r"D:\a\新建文本文档.txt"))
"""
(‘D:\\a‘, ‘新建文本文档.txt‘)
"""

 3.os.path.dirname(path),返回path的目录。其实就是os.path.split(path)的第一个元素

print(os.path.dirname(r"D:\a\新建文本文档.txt"))
"""
D:\a
"""

 4.os.path.basename(),返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素

print(os.path.basename(r"D:\a\新建文本文档.txt"))
""" 新建文本文档.txt """

 5.os.path.exists(),如果path存在,返回True;如果path不存在,返回False

print(os.path.exists(r"D:\a\新建文本文档.txt"))
"""
True
"""

 6.os.path.isabs(),如果path是绝对路径,返回True

print(os.path.isabs(r"D:\a\新建文本文档.txt"))
"""
True
"""

 7.os.path.isfile(),如果path是一个存在的文件,返回True。否则返回False

print(os.path.isfile(r"D:\a\新建文本文档.txt"))
"""
True
"""

8.os.path.isdir(),如果path是一个存在的目录,则返回True。否则返回False

print(os.path.isdir(r"D:\a"))
"""
True
"""

 9.os.path.join()将多个路径组合后返回,第一个绝对路径之前的参数将被忽略

print(os.path.join(‘a‘,r‘D:\b‘,‘新建文本文件.txt‘)) 
"""
D:\b\新建文本文件.txt
"""

 10.os.path.getatime(),返回path所指向的文件或者目录的最后存取时间

print(os.path.getatime(r"D:\a\新建文本文档.txt"))
"""
1496674596.1832142
"""

11.os.path.getmtime(), 返回path所指向的文件或者目录的最后修改时间

print(os.path.getmtime(r"D:\a\新建文本文档.txt"))
"""
1496674596.1832142
"""

二.random模块

1.取出随机的ip地址

import random
proxy_ip=[
    ‘192.1.1.1‘,
    ‘192.1.1.2‘,
    ‘192.1.1.3‘,
    ‘192.1.1.4‘,
]

print(random.choice(proxy_ip))

 2.验证码实例

import random
def v_code(n=5):
    res=‘‘
    for i in range(n):
        num=random.randint(0,9)
        s=chr(random.randint(65,90))
        add=random.choice([num,s])
        res+=str(add)
    return res

print(v_code(6))

 三.sys模块

进度条,在pycharm下无效,在命令行下执行

import sys,time

for i in range(50):
    sys.stdout.write(‘%s\r‘ %(‘#‘*i))
    sys.stdout.flush()
    time.sleep(0.1)

 四.time时间模块

1.时间戳,1970年1月1日之后的秒

import time
print(time.time())
"""
1496677931.1134853
"""

 2.结构化时间

print(time.localtime())
print(time.localtime().tm_year)
print(time.gmtime())
"""
time.struct_time(tm_year=2017, tm_mon=6, tm_mday=5, tm_hour=23, tm_min=54, tm_sec=45, tm_wday=0, tm_yday=156, tm_isdst=0)
2017
time.struct_time(tm_year=2017, tm_mon=6, tm_mday=5, tm_hour=15, tm_min=54, tm_sec=45, tm_wday=0, tm_yday=156, tm_isdst=0)
"""

 3.结构化的字符串,默认为当前时间

print(time.strftime(‘%Y-%m-%d %H:%M:%S‘))
print(time.strftime(‘%Y-%m-%d %X‘))
"""
2017-06-05 23:55:48
2017-06-05 23:55:48
"""

 

Python基础之模块