Python模块使用

1、os模块,都是和操作系统相关的模块,用实例证明,code如下:

import os
os.remove('a.txt')  #删除
os.rename('a.txt','AA.txt')  #重命名,前面是old,后面是new

#=========================================
#只创建一级的目录,二者没有什么区别
#创建多层目录,只能用os.makedirs。
# os.mkdir('python') #创建文件夹
# os.makedirs('lmm')
# os.mkdir('china/beijing')  #FileNotFoundError: [Errno 2] No such file or directory: 'china/beijing'
# os.makedirs('china/beijing') #OK,父目录不存在会帮忙创建。
# os.removedirs('china') #删除一个空的文件夹目录

#=========================================
#获取某个目录下所有的东西,文件夹与文件
# print(os.listdir('/Users/XX/Desktop/python学习/'))
# print(os.path.isdir('china')) #判断是否是文件夹
# print(os.path.isfile('china'))
# print(os.path.isfile('test.py')) #判断是否是文件。
# print(os.path.exists('china')) #判断文件或者文件夹是否存在
# os.system('ifconfig') #执行当前操作系统命令,无返回值
# os.system('ls') #查看当前目录下有什么东西
# os.system('ls -a') #详细查看当前目录下有什么东西,只要是操作系统命令都可以执行。
# res = os.popen('ifconfig').read()# 也是用来执行操作系统命令的。
# print(res)
# print(os.path.join('china','海淀','西二旗','沃尔玛','a.py')) #目录拼接,可以多个目录
# print(os.path.split('/Users/XX/Desktop/python学习/')) #路径分割
# print(os.path.split('/Users/XX/Desktop/python学习/笔记.txt')) #路径分割

#========================================
#将目录与文件或者文件夹分割开来。
#
# print(os.path.dirname('/Users/Man/Desktop/python学习/笔记.txt')) #取父目录
# print(os.path.dirname('/Users/Man/Desktop/python学习/')) #取父目录
# print(os.path.getsize('/Users/Man/Desktop/python学习/笔记.txt')) #文件或者文件夹所占大小单位是字节
# print(os.path.getsize('/Users/Man/Desktop/python学习/')) #文件或者文件夹所占大小,单位是字节
# print(os.getcwd()) #取当前目录
# os.chdir('/Users/Man/Desktop/python自动化学习/Day5-2') #进入到。。目录
# print(os.getcwd()) #切换目录后,再取当前目录,就是切换后的目录了。
# print(os.path.getctime()) #查看当前文件创建时间等等,自己查看

2、time模块,操作时间相关的。

表示时间有两种方式:1、格式化好的如:2019-02-04 23:43:59 2、时间戳【从计算机诞生到现在过去了多少秒】

举例说明:

import time
res = time.strftime('%Y-%m-%d') #Y是2019,y是19  #获取格式化好的时间。
res = time.strftime('%Y') #Y是2019,y是19  #获取格式化好的时间。
res = time.strftime('%m') #Y是2019,y是19  #获取格式化好的时间。
res = time.strftime('%H:%M:%S') #时分秒必须用全大写字母,可以只取当前格式化好的时间。
res = time.time()#获取当前的时间戳,
print(res)#直接使用,精确到毫秒,可以去掉小数位。
print(int(res))

#===================================
#格式化好的时间与时间戳的转换需要一个中间量:时间元祖
#1、将格式化好的时间转为时间戳如下:
#把格式化好的时间转成时间元祖,两个元素的格式一定要一样
time_tuple = time.strptime('2028-08-29 12:24:38','%Y-%m-%d %H:%M:%S')
res = time.mktime(time_tuple) #将时间元祖转为时间戳

#2、将时间戳转换为格式化好的时间

res = time.localtime(time.time())  #将当地时区时间戳转为时间元祖
res = time.strftime('%Y-%m-%d %H:%M:%S',res)  #res为时间元祖,不传res,默认为当前时间。
print(res)

3、hashlib模块,主要是用来使用加密的。目前md5加密不可逆的。md5无论加密字符串有多长结果都是32位的。

import hashlib 
password = '123456'
password = password.encode() #将字符串转换为二进制
m = hashlib.md5(password) #二进制的数据才可以加密
# m = hashlib.sha1(password) #加密后40
# m = hashlib.sha224(password)#加密后56
# m = hashlib.sha256(password) #加密后64,都不可以解密。
# print(dir(m)) #查看某一个变量下有哪些方法。
print(m.hexdigest()) #md5加密后。
print(len(m.hexdigest())) #查看加密后的长度

加盐是安全策略的一种。写一个自己使用的md5算法,加盐默认为空如下:

#有盐就加,没盐默认md5加密。
def my_md5(s:str,salt=None):
    if salt:
        s = s+salt
    m = hashlib.md5(s.encode())
    return m.hexdigest()

4、操作第三方模块

首先说下第三方模块的安装方式:

      1、pip install xx

      2、.whl文件, 直接使用:pip install xxx.whl[可以写绝对路径或者到该文件的目录下执行]

      3、.tar.gz文件[如果安装过了,这种方式不会报已经安装,只会卸载掉老的重新安装。]

写一个方法说明下Python操作数据库的方法:

def my_db(ip,user,password,db,sql,port=3306,charset='utf8',autocommit=True):
    conn = pymysql.connect(host=ip,db=db,user=user,password=password,port=port,charset=charset,autocommit=True) #数据库连接
    cur = conn.cursor()#创建游标
    cur.execute(sql) #执行SQL
    res = cur.fetchall()#获取执行SQL的结果
    cur.close() #关闭游标
    conn.close()#关闭数据库连接
    return res

5、操作excel

     5.1、写excel,举例说明,往一个excel里写入几行数据,最传统的方式如下:

import xlwt
book = xlwt.Workbook()
sheet = book.add_sheet('0203')
stus = [
    [1,'njf','123456'],
    [2,'lrr','123456'],
    [3,'lmm','123456'],
    [4,'lii','123456'],
    [5,'xqd','123456']
]
line = 0 #控制行
for stu in stus:#行
    rol = 0
    for cont in stu:
        sheet.write(line,rol,cont)
        rol += 1
    line += 1

book.save('stu.xls')

      5.2、读excel,举例说明常用的用法:

import xlrd

book = xlrd.open_workbook('stu.xls')
sheet = book.sheet_by_index(0) #第几个sheet页
# sheet = book.sheet_by_name('sheet1') #根据sheet页名字来
print(sheet.nrows) #excel里有多少行
print(sheet.ncols) #excel里有多少行

for i in range(sheet.nrows):#循环获取每行的内容。
    print(sheet.row_values(i))
    
# #如何获取到指定的单元格的内容
print(sheet.cell(0,0).value)
print(sheet.cell(0,1).value)

# #获取到整行或者整列的内容
print(sheet.row_values(0)) #获取到整行的内容
print(sheet.col_values(0)) #获取到整列的内容

      5.3、操作修改excel,举例

import xlutils
import xlrd  #这两个配合着一起使用
from xlutils import copy
book = xlrd.open_workbook('stu.xls')
#先用xlrd打开一个excel
new_book = copy.copy(book) #复制一份
#然后再用xlutils里面的copy功能,复制一excel
sheet = new_book.get_sheet(0) #获取到第几个sheet页
sheet.write(0,1,'中国人')
sheet.write(1,1,'美国人')
new_book.save('stu.xls')

最初练习,从最基础的算法逻辑做起!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值