安装
# 1.自动安装
# 将python安装目录的script目录加入环境变量
# 然后用pip命令进行安装 pip install xpinyin
# 如果不加环境变量强制安装:C:Anaconda3python.exe -m pip install xxxx
# 如果安装pip源很慢,在pycharm中运行修改默认pip源.py文件修改pip源为国内的
#执行此文件,将pip源改为国内的,下载快些 import os,sys,platform ini="""[global] index-url = https://pypi.doubanio.com/simple/ [install] trusted-host=pypi.doubanio.com """ os_version=platform.platform() if 'Windows' in os_version: os_flag=False file_name='pip.ini' else: os_flag=True file_name='pip.conf' if os_flag==True: pippath=os.environ["HOME"]+os.sep+".pip"+os.sep else: pippath=os.environ["USERPROFILE"]+os.sep+"pip"+os.sep if not os.path.exists(pippath): os.mkdir(pippath) with open(pippath+file_name,"w") as f: f.write(ini)
# 2.手动安装
# 进入https://pypi.org 源网站下载安装文件
# whl文件安装命令:pip install xpinyin-0.7.6-py3-none-any.whl
# tar.gz文件安装命令:
# 1.先解压
# 2.cd xpinyin-0.7.6
# 3.python setup.py install
Excel模块
# pip install xlrd
# pip install xlwt
# pip install openpyxl
# import xlwt #写入新的Excel,不支持xlsx,xls最大可写65536行
# book=xlwt.Workbook() #建一个Excel对象
# sheet=book.add_sheet('sheet1') # 建一个sheet页
# sheet.write(0,0,'id') # 第0行,第0列写入
# sheet.write(2,0,"1") #第1行,第0列写入
# # for i in range(100000): #用xlwt模块最大可写65536行,列最大是256列
# # sheet.write(i,0,i)
# book.save("test2.xlsx") #保存为.xls文件,结尾用xlsx的话,用office打开有问题,wps打开没问题
import xlrd #能读.xls、.xlsx文件(最近版本不支持xlsx),xls最大可读65536行
# book=xlrd.open_workbook('test.xls')
# print(book.sheets()) #获取所有的sheet页
# print(book.sheet_names()) #获取所有sheet页面的名字
# print(book.nsheets) #获取页数
# sheet=book.sheet_by_name('Sheet1') #获取某一页
# sheet=book.sheet_by_index(0) #获取某一页
# print(sheet.cell(0, 0).value) #获取某个单元格内容
# print(sheet.row_values(0)) #获取某一行的内容
# print(sheet.row(0)) #获取某一行的内容
# print(sheet.col_values(0)) #获取某一列的内容
# print(sheet.col(0)) #获取某一列的内容
# print(sheet.nrows) #获取行数
# print(sheet.ncols) #获取列数
# from xlutils import copy #只能修改Excel,用xlutils、xlrd模块配合,xls最大可写65536行
# import xlrd
# book=xlrd.open_workbook('test.xls')
# new_book=copy.copy(book)
# sheet=new_book.get_sheet(0)
# sheet.write(0,0,'编号')
# new_book.save('test.xls')
# import openpyxl #可读可写可修改,不支持xls格式,只支持xlsx,xlsx可支持超过65536行
# book=openpyxl.load_workbook('test1.xlsx')
# print(book.sheetnames) #所有sheet页的名字
# sheet=book['Sheet1']
# print(sheet.max_row) #共多少行
# print(sheet.max_column) #共多少列
# print(sheet.cell(1, 1).value) #获取单元格的内容
# sheet.cell(1,1).value='id' #修改某个单元格的内容
# print(sheet['A1'].value) #获取A1这个单元格的内容
# sheet['A1'].value='编号' #修改A1这个单元格的内容
# book.save('test1.xlsx') #保存修改的内容
# 循环输出文件内容
# for row in sheet.rows:
# row_data=[col.value for col in row]
# print(row_data)
# 网上的方法,使用pandas模块
# https://www.jianshu.com/p/19219542bf23
# import pandas as pd #可读可写,不支持xls格式
# # 读Excel
# df = pd.read_excel(r'test1.xlsx',sheet_name=0)
# print(df.head()) #读取的数据类型是DataFrame类型
#写excel
# from pandas import DataFrame
# dict_data={
# 'name':['张三','李四','王五'],
# 'age':[11,12,13],
# 'sex':['男','女','男']
# }
# df=DataFrame(dict_data)
# df.to_excel('test1.xlsx')
Faker模块
import faker
# faker库相关:https://zhuanlan.zhihu.com/p/87203290
f=faker.Faker(locale='zh_CN')
print(dir(f)) #获取所有的方法
dir() #函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。
f.xx() #返回的是str类型
print((f.name()) #获取随机姓名
print(f.address()) #获取随机街道
print(f.city()) #随机城市
print(f.chrome()) #随机Chrome信息
print(f.user_name()) #随机用户名
print(f.password()) #随机密码
print(f.street_address()) #随机街道
print(f.phone_number()) #随机手机号
print(f.credit_card_full()) #全的信用卡信息
print(f.credit_card_number()) #随机信用卡
print(f.free_email()) #随机邮箱
print(f.ipv4()) #ip4地址
print(f.ipv6()) #ip6地址
print(f.name_female()) #随机女姓名
print(f.name_male()) #随机男姓名
print(f.ssn()) #随机身份证号
print(f.ssn(min_age=18, max_age=90)) #18-90岁的随机身份证
pymysql模块
# 安装:在cmd中输入命令:pip install pymysql
import pymysql
ip = "132.145.93.63"
user = "jxz"
password = "123456" #密码必须是字符串
db = "jxz"
port = 3306 # 端口号必须是int类型
connect=pymysql.connect(host=ip,user=user,password=password,db=db,port=port,autocommit=True,charset='utf8') #连接数据库
cursor = connect.cursor(pymysql.cursors.DictCursor) #建立游标
# sql1='show tables' #sql语句
sql2='select username,password from user_zpp where username="duhao"' #sql语句
cursor.execute(sql2) # 执行sql语句
# result=cursor.fetchall() #返回二维数组,获取sql执行的所有结果(先fetchall再fetchone是取不到结果的,因为fetchall后文件指针已经到了末尾,再取不到内容了)
# result=cursor.fetchone() #只取一条结果,返回字典
# result=cursor.fetchmany(5) #取部分结果,返回列表
# connect.commit() #提交 ,在connect时加autocommit=True可自动提交,不用这一步
# connect.rollback()#回滚
# for c in cursor: #直接循环游标,每次取的就是表里的每条数据
# print(c)
cursor.close() #关闭游标
connect.close() #关闭数据库连接
Md5加密
import hashlib
# md5加密是不可逆的
# #加密步骤
# str1='zhengpei'
# m=hashlib.md5(str1.encode())
# print(m.hexdigest())
#加盐
def my_md5(s,salt=''):
s=str(s)
new_s="%s%s"%(s,salt)
m=hashlib.md5(new_s.encode())
return m.hexdigest()
print(my_md5('Pp123456!'))
# #文件加密
# FILENAME='test.xls'
# def file_md5(filename):
# with open(filename,'rb') as f:
# m=hashlib.md5(f.read())
# return m.hexdigest()
# print(file_md5(FILENAME))
xpinyin模块
# 用法
uname='郑佩'
print(xpinyin.Pinyin().get_pinyin(uname,''))
修改默认pip源:
#执行此文件,将pip源改为国内的,下载快些
import os,sys,platform
ini="""[global]
index-url = https://pypi.doubanio.com/simple/
[install]
trusted-host=pypi.doubanio.com
"""
os_version=platform.platform()
if 'Windows' in os_version:
os_flag=False
file_name='pip.ini'
else:
os_flag=True
file_name='pip.conf'
if os_flag==True:
pippath=os.environ["HOME"]+os.sep+".pip"+os.sep
else:
pippath=os.environ["USERPROFILE"]+os.sep+"pip"+os.sep
if not os.path.exists(pippath):
os.mkdir(pippath)
with open(pippath+file_name,"w") as f:
f.write(ini)