# # 模块的方法
# 1单个模块引入 improt
# import 模块名
# import time #引入time这个模块
# 调用模块内的具体方法语句:模块名,方法名()
# time.time()
# 2多个模块同时引入:
# import 模块名1,模块名2.。。。。。模块名N
# import time,string #同时引入time模块和string模块
#
#
# 3引入模块内的单个方法
# from time import time #从time模块内引入time方法
# 调用模块内具体的方法语句:方法名()
# t = time()
# print(t)
# 4引入模块内的方法
# from time import time,sleep,strftime 同时从time内引入time,sleep,strftime三个方法
# time()
# sleep(2)
# strftime('')
# 5.引人模块内的所有方法
# from time import * #引入time模块内的所有方法
# time()
# sleep(2)
# ctime()
# strftime('')
# 6.从包或者目录内引入某个模块
# from lesson.lesson4 import count_txt
# path = r'D:\workspace\dcs_sh13\test\test1.txt'
# count_txt(path)
# # 7.引入某个模块内的方法,并且给该方法取别名
# # from lesson.lesson4 import count_txt as c #从lesson包内的lesson4模块内引入count_txt函数并且给该函数取别名为c
# # c(path)
# #
#
# #python常见的模块
# import time
# 1.time模块中常见的方法:
# time()到现在的经过的秒数
# 第一种打印方法:使用print语句直接打印
# print(time.time())
# 第二种打印方法: 把time的结果赋值给一个变量,在使用print语句打印变量
# t = time.time()
# print(t)
# ctime() #固定格式的当前时间
# c = time.ctime()
# print(c) #执行结果:Fri may 7 10:34:50 2021
# sleep(3)#休眠 单位是秒
# time.sleep(3) #线程等待/休眠:使线程强制休眠
# asctime() 转换为asc码显示当前时间
# a = time.actime
# print(a )
#
# strftime()#时间格式化
# 该方法常用的时间参数
# %y year with century as a decimal .
# %m month as a decimal number [01,12].
# %d Day of the month as a decimal number[01,31].
# %H Hour (24-hour clock) as a decmal number[00,23].
# %M Minute as a decimal nuber [00,59]
# %S Second as a decimal number [00,61]
# # s = time.strftime("%Y-%m-%d-%H-%M-%S")
# print(s) 执行结果:2021-05-07-10-41-27 ---》时间戳
# 2.string 模块
# import string
# digits 打印0-9的数字
# s = string.digits
# print(s) 执行的结果0123456789
#
# import string
# ascii_letters #26个大小写英文字符
# s = string.ascii_letters
# print(s)
#
# ascii_lowercase #小写26个小写字母
# s = string.ascii_lowercase
# print(s)
# ascii_uppercase #26个大写字母
# s = string.ascii_uppercase
# print(s)
# random模块中常见的方法:
# import random.random() #该方法是生成0-1之间的浮点数,但是能取到0,但是取不到1
# r = random.random()
# print(r)
# random.randint(x,y) #该方法生成指定范围内整数,包括开始和结束值
# r = random.randint(0,10)
# print(r)
# random.randrange(x,y,step) #生成指定范围内的奇数,不包括结束值
# r = random.randrange(1,10,2)
# print(r)
# random.randrange(x,y,step) #生成指定范围内的偶数,不包括结束值
# r = random.randrange(0,10,2)
# print(c)
# random.sample(seq,n) #从序列seq选择n个随机且独立的元素 ——————以列表的形式返回
# str = 'asdfghjkqweq'
# list1 = [1,2,3,4,5,'test','python']
# r =random.sample(str,6)
# print(r) 执行结果['w','a','k','s','e','f']
# random.choice(test) #生成随机字符
# r = random.choice(str)
# print(r)
# random.shuffle(list) #洗牌(随机数列)
# list = [1,2,3,4,5,'test','python']
# random.shuffle(list1)
# print(list1)
#hashlib.md5() #MD5加密
import hashlib
# num = '123456'
# md5 = hashlib.md5()
# md5.update(num.encode('utf-8'))
# print(md5.hexdigest())
# 1、使用random模块随机生成手机号码、自己定义手机号码开头的前三位
# import random,string
# num =string.digits #0-9的数字
#
# def r_phone(num):
# str1 ='139'
# for i in range(8):
# a = random.choice(num)
# print(a,end=' ')
# str1 = str1+a
# print(str1)
#
# r_phone(num)
# 更仔细写
# import random,string
# num =string.digits #0-9的数字
# def r_phone(num):
# list1 = ['13','15','17','18''19']
# b = random.choice(list1)
# for i in range(8);
# a = random.choice(num)
# # print(a,end=' ')
# b =b+a
# print(b)
# r_phone(num)
# 2、用random模块随机生成6位数验证码
#
# str1 = string.digits+string.ascii_letters
# def verify(str):
# str2 = ' '
# for i in range(6):
# a = random.choice(str)
# str2 = str2+a
# print(str2)
# verify(str1)
# # 3、通过md5加密算法把随机生成的6位数验证码进行加密返回16进制的字 符串
# str1 = string.digits+string.ascii_letters
# def verify(str):
# str2 = ' '
# for i in range(6):
# a = random.choice(str)
# str2 = str2+a
# # print(str2)
# return str2
# import hashlib
# def r_md5(str2):
# md5 = hashlib.md5()
# md5.update(str2.encode('utf-8'))
# print(md5.hexdigest())
# r_md5(verify(str1))
# # os模块
import os
# os.getcwd() #获取当前执行命定所在目录
# o = os.getcwd()
# print(o) #执行结果是D:\python\python_file\day01\lesson
#
# os.path.isfile() #判断是否文件
# import os.path
#
# path = 'D:\python\python_file\day01\lesson\lesson5.py'
# o = os.path.isfile(path)
# print(o)
# os.path.isdir() #判断是否是目录
# o = os.path.isdir(path)
# print(o)
# os.path.exists() #判断文件或目录是否存在
# path = os.path.exists(path)
# print(o)
# os.listdir('dirname') #列出指定目录下的目录或文件 #以列表形式返回
# o = os.listdir(path)
# print(o)
# os.path.split('name') #分割文件名与目录
# path = 'D:\workspace\day01\lesson\lesson5.py'
# o = os.path.split(path)
# print(o) #执行的结果:('D:\\workspace\\day01\\lesson','lesson5.py')
# os.path.join(path,'name') #链接目录与文件名或目录
# path = 'D:\workspace\day01\lesson'
# o = os.path.join(path,lesson6.py)
# print(o) #执行结果:'D:\workspace\day01\lesson\lesson6.py'
# os.mkdir(dir) #创建目录名称
# os.rename('dcs',day01)
# 正则模块(re)
# import re
# 预定义字符集匹配:
# \d:数字0-9
# \D:非数字
# \s:空白字符
# \n:换行符
# \r:回车符
# re模块数量词匹配:
# 符号^:表示的匹配字符以什么开头
# 符号$:表示的匹配字符以什么结尾
# 符号*:匹配*前面的字符0次或n次
# eg:ab* 能匹配a 匹配ab 匹配abb
# 符号+:匹配+前面的字符1次或n次
# 符号?:匹配?前面的字符0次或1次
# 符号{m}:匹配前一个字符m次
# 符号{m,n}:匹配前一个字符m到n次(包括n次),m或n可以省略,mn都是 正整数
# 1.match() #从第一个字符开始匹配,如果第一个字符不是要匹配的类型、则匹配失败并且返回一个None
# import re
# str1 = 'asdfghjkl'
# r = re.match('\D{5,7}',str1)
# print(r.group()) #执行的结果是asdfghj
# 2.search 从第一个字符开始查找、一找到就返回第一个字符串,找到就不往下找,找不到则报错
# str1 = 'lasdfghjkl'
# r = re.search('\D',str1)
# print(r.group()) #执行的结果l
# 3.findall 从第一个字符开始查找,找到全部相关匹配为止,找不到返回一个列表[]
# str1 = 'asdf1ghjkl'
# r = re.findall('\D',str1) #执行结果['a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l']
# print(r)
# 4.compile() #编译模式生成对象,找到全部相关匹配为止,找不到返回一个列表[]
# str1 = 'hellopythonhpython'
# r_p = re.compile('python')
# all = r_p.findall(str1)
# print(all) #执行结果['python', 'python']
#openpyxl 用于读取excel表格内容的模块
import openpyxl
path = r'D:\test.xlsx'
wb = openpyxl.load_workbook(path) #创建一个获取表格文件的对象
ws = wb.active #使用创建的文件对象调用active方法获取表格中的活动页
#获取活动页的名称
#sheet_name = wb['sheet2']
# print(sheet_name)
# 获取表格的最大行和最大列
# max_r = ws.max_row
# print(max_r)
# max_c = ws.max_row
# print(max_c)
# # 获取表格内单元格的数据
# cell =ws('A1')
# print(cell.value)
#
# # 获取一行数据
# for i in ws.iter_rows(min_row=1,max_row=1,min_col=1,max_col=3):
# for cell in i:
# print(cell.value)
# # 获取一列数据
# for i in ws.iter_cols(min_col=1,max_col=1,min_row=1,max_row=3):
# for cell in i:
# print(cell.value)
|
|