python-os&sys&time模块&mysql模块
Posted tour8
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-os&sys&time模块&mysql模块相关的知识,希望对你有一定的参考价值。
1、string常量
1 # 0123456789 2 print(string.digits) 3 # abcdefghijklmnopqrstuvwxyz 4 print(string.ascii_lowercase) 5 # ABCDEFGHIJKLMNOPQRSTUVWXYZ 6 print(string.ascii_uppercase)
2、sys模块
1 import sys 2 print(sys.platform) # 操作系统
1 import sys 2 3 print(sys.argv) # 用来获取运行python文件的时候传入的参数 4 if sys.argv[1] == \'--help\': 5 print(\'这个python程序是为了说明sys.argv的作用\') 6 elif sys.argv[1] == \'--version\': 7 print(\'现在的版本是1.0.1\')
运行结果:
3、os模块
- 文件相关操作
1 import os 2 3 # 判断目录/文件是否存在 4 print(os.path.exists(\'/Users/nhy/PycharmProjects/ssz/day51\')) 5 6 # 获取父目录 7 # 结果:/Users/nhy/PycharmProjects/ssz/day5/ 8 print(os.path.dirname(\'/Users/nhy/PycharmProjects/ssz/day5/goods.json\')) 9 10 # 根据相对路径获取绝对路径 11 print(os.path.abspath(r\'../day4/a.py\')) 12 13 # 拆分目录和文件 14 # 结果:#根据相对路径获取绝对路径 15 print(os.path.split(\'/usr/local/a.py\')) 16 17 # 获取文件大小,单位?? 18 print(os.path.getsize(\'/Users/snail/PycharmProjects/python自动化/day5/笔记.txt\')) 19 20 # 判断是否文件;若文件不存在,则返回false 21 print(os.path.isfile(\'/Users/snail/PycharmProjects/python自动化/day5/笔记.txt\')) 22 # 判断是否目录;若文件不存在,则返回false 23 print(os.path.isdir(\'/Users/snail/PycharmProjects/python自动化/day5\')) 24 print(os.path.isfile(\'/Users/snail/PycharmProjects/python自动化/day5\')) 25 26 # 修改时间 27 print(os.path.getmtime(r\'/Users/snail/PycharmProjects/python自动化/day5/os模块.py\')) 28 # 最后一次访问的时间 29 print(os.path.getatime(r\'/Users/snail/PycharmProjects/python自动化/day5/os模块.py\')) 30 # 创建时间 31 print(os.path.getctime(r\'/Users/snail/PycharmProjects/python自动化/day5/os模块.py\'))
- 目录相关操作
1 import os 2 3 # 创建目录 4 os.mkdir(\'test\') 5 os.makedirs(\'test1\') 6 7 # 级联创建目录:父目录不存在的时候,会帮你创建一个父目录 8 os.makedirs(\'python2/python2\') 9 10 # 删除空文件夹 11 os.rmdir(\'python/python3\') 12 13 # 只能删除文件,不能删文件夹 14 os.remove(\'goods.json\') 15 16 # 重命名:文件和目录均可 17 os.rename(\'python3/1.py\',\'python3/11.py\') 18 19 # 获取上级目录下的所有文件(目录也是一个文件) 20 print(os.listdir(\'..\')) 21 # 获取当前目录下的所有文件 22 print(os.listdir(\'.\')) 23 24 # 切换目录:进入到某个目录下 25 os.chdir(\'/Users/snail/PycharmProjects/python自动化\') 26 print(os.listdir(\'.\')) 27 28 # 获取当前目录 29 print(os.getcwd()) 30 31 # 执行操作系统命令,获取不到结果 32 os.system(\'rm -rf python3\') 33 34 # 执行操作系统命令,可以获取到命令执行的结果 35 result = os.popen(\'ifconfig\').read() 36 print(result) 37 38 39 # os.walk() 40 # 获取某个目录下的内容:当前目录,当前目录下的文件夹,当前目录下的文件 41 # 它帮你循环这个目录下面所有的子目录 42 43 for cur_dir,dirs,files in os.walk(\'/Users/snail/PycharmProjects/python自动化/day5/python2\'): 44 print(cur_dir) 45 print(dirs) 46 print(files) 47 print(\'=\'*10)
- os模块小练习
1 # 查找某个目录下的mp4文件 2 # 1、指定在哪个目录下 3 # 2、循环这个目录下的文件,判断文件名是否包含.mp4 4 # 3、如果包含.mp4 print该目录 5 import os 6 keyword = \'.mp4\' 7 for cur_dir,dirs,files in os.walk(\'/Users/snail/Downloads\'): 8 for file in files: 9 if keyword in file: 10 abs_path = os.path.join(cur_dir,file) 11 print(abs_path)
4、time&datetime模块
- 当前时间戳及格式化时间
1 import time,datetime 2 3 4 # 时间元组 5 # 当前时间戳:1589727976.850101; 6 # 表示从unix元年(计算机发明的时间)到现在过了多少秒 7 print(time.time()) 8 9 # 格式化时间(当前时间) 10 # 2020-05-17 23:06:16 11 print(time.strftime(\'%Y-%m-%d %H:%M:%S\')) 12 # 2020-05-17 13 print(time.strftime(\'%Y-%m-%d\')) 14 # 23:06:16 15 print(time.strftime(\'%H:%M:%S\')) 16 # 202005 17 print(time.strftime(\'%Y%m\'))
- 时间戳、格式化时间相互转换
1 import time,datetime 2 3 # 把时间戳转成时间元素 4 result =time.localtime(1589617130) 5 print(result) 6 print(time.strftime(\'%Y-%m-%d %H:%M:%S\',result)) 7 8 # 转换为时间戳 9 # result为元组 10 result = time.strptime(\'2020-05-16 16:18:50\',\'%Y-%m-%d %H:%M:%S\') 11 print(result) 12 print(time.mktime(result))
- 封装成函数
1 import time,datetime 2 3 4 # 这个函数将格式化好的时间转为时间戳,如果不传参数默认返回当前时间戳 5 def str_to_timezone(str=None,format="%Y-%m-%d %H:%M:%S"): 6 if str: 7 time_tuple = time.strptime(str,format) 8 result = time.mktime(time_tuple) 9 else: 10 result = time.time() 11 return int(result) 12 13 print(str_to_timezone()) 14 15 16 \'\'\'这个函数是时间戳转为格式化时间,如果不传参数,默认返回当前时间\'\'\' 17 18 19 def timezone_to_str(timezone=None,format="%Y-%m-%d %H:%M:%S"): 20 if timezone: 21 time_tuple = time.localtime(timezone) 22 result = time.strftime(format,time_tuple) 23 else: 24 result = time.strftime(format) 25 return result 26 27 print(timezone_to_str())
- time.sleep()
1 import time 2 3 # 睡10秒 4 time.sleep(10)
5、mysql模块
- 查询操作
1 1 import pymysql 2 2 connect = pymysql.connect(host=\'xxxx\', 3 3 user=\'xxx\', 4 4 password=\'xxx\', 5 5 db=\'xxx\', 6 6 port=3306, 7 7 charset="utf8", 8 8 autocommit=True 9 9 ) 10 10 # 建立游标 11 11 cur = connect.cursor() 12 12 sql = \'select * from students limit 3;\' 13 13 cur.execute(sql) 14 14 print(cur.fetchall()) # 获取sql执行的结果 15 15 # print(cur.fetchone()) # 获取sql执行的结果,只获取一条结果 16 16 # print(cur.fetchmany(10)) # 获取sql执行的结果#获取指定的条数 17 17 cur.close() 18 18 connect.close()
- 查询操作2
1 import pymysql 2 connect = pymysql.connect(host=\'xxx\', 3 user=\'xxx\', 4 password=\'xxx\', 5 db=\'xxx\', 6 port=3306, 7 charset="utf8", 8 autocommit=True 9 ) 10 11 # 指定游标类型;返回的数据为字典 12 cur = connect.cursor(pymysql.cursors.DictCursor) 13 sql = \'select * from students limit 3;\' 14 cur.execute(sql) 15 # print(cur.fetchall()) # 获取sql执行的结果 16 print(cur.fetchone()) # 获取sql执行的结果,只获取一条结果 17 # print(cur.fetchmany(10)) # 获取sql执行的结果#获取指定的条数 18 cur.close() 19 connect.close()
- 写入操作
import pymysql connect = pymysql.connect(host=\'xxx\', user=\'xxx\', password=\'xxx\', db=\'xxx\', port=3306, charset="utf8", autocommit=True ) # 建立游标 cur = connect.cursor() sql="insert into students values (88,\'lzh\',\'男\',38,\'射手座\',\'北京\');" cur.execute(sql) # commit操作,修改数据的情况下,必须得commit;建立连接已指定自动提交,不需要手动提交,也可成功写入数据 connect.commit() # 事务:多条sql一起执行,如果一条失败,两条sql都算失败 # connect.rollback() #回滚,sql执行失败的时候,用在事务里 cur.close() connect.close()
以上是关于python-os&sys&time模块&mysql模块的主要内容,如果未能解决你的问题,请参考以下文章
UVA1025 城市里的间谍 A Spy in the Metro
UVA1025 城市里的间谍 A Spy in the Metro