前言:
目前大家对“python常用的模块有哪些”可能比较着重,看官们都需要知道一些“python常用的模块有哪些”的相关内容。那么小编同时在网摘上网罗了一些关于“python常用的模块有哪些””的相关知识,希望各位老铁们能喜欢,看官们快快来学习一下吧!import reimport osimport sysimport jsonimport pickleimport timeimport randomimport queuefrom collections import dequefrom collections import Counterfrom collections import defaultdict#zip函数def new_zip(): list1 = [1,2,3,4,5] list2 = [2,5,6,2,7] print(zip(list1,list2))def new_counter(): c = Counter("周周周都是方法") print(c.get("周")) for k,v in c.items(): print(k+"=>"+str(v)) lst = ['周昆','河正','换好'] c = Counter(lst) print(c.get("周昆"))def new_defaultdict(): cc = defaultdict(lambda :123) #123为默认值 print(cc) cc['jay'] #如果元素v不在,将默认赋值123给jay print(cc) cc['周是'] = "周昆" #添加新元素 print(cc)def new_deque(): ''' :1、栈:FILO 先进后出 = 》 比如放东西到柜子里面 :2、队列:FIFO 先进行出 =》买车票,所有排对的场面 ''' # lst = [] # lst.append("周昆") # lst.append("同事") # lst.append("新同事") # ret = lst.pop() # print(ret) # ret = lst.pop() # print(ret) # ret = lst.pop() # print(ret) q = queue.Queue() #创建对列 q.put("周昆") q.put("同事") q.put("新同事") print(q.get()) print(q.get()) print(q.get()) #双向对列 d = deque() d.append("贵") #添加到右边 d.appendleft("哈") #添加到左边 d.append("你好") d.appendleft("不好") d.appendleft("哈哈") #从左至右排序 哈哈》不好》哈》贵》你好 print(d) print(d.pop()) print(d.popleft()) print(d.popleft()) print(d.pop())#产生random随机数def new_random(): print(random.random()) #从0-1之间的小数 print(random.uniform(1,20)) #从1-20之间的随机小数 print(random.randint(5,20)) #从5-20的随机数 lst = ["周二",'mfk','周','你好'] print(random.choice(lst)) #随机从列表选择,一个随机值 print(random.sample(lst,2)) #从列表中随机拿两个元素出来,返回是列表 random.shuffle(lst)#打乱列表的顺序 print(lst) def v_cod(n = 6): res = '' for i in range(n): num = random.randint(0,9) s = chr(random.randint(65,90)) add = random.choice([num,s]) res = res + str(add) return res print(v_cod(6))#tim时间模块def new_time(): # print(time.time()) #格式化时间 # print(time.strftime("%Y-%M-%d %H:%M:%S")) #结构化时间 # print(time.localtime()) #时间戳 n = 1556453463.1047199 #把时间戳转化为结构化时间 struct_time = time.localtime(n) print(struct_time) #把结构化时间转化成格式化时间 s = time.strftime("%Y-%m-%d %H:%M:%S",struct_time) print(s) #把字符串转化为数字(时间戳) # s = input("请输入一个时间(%Y-%m-%d %H:%M:%S):") #把字符串转化为结构化时间 struct_time = time.strptime(s,"%Y-%m-%d %H:%M:%S") #把结构化时间转为格式化时间 print(time.strftime("%Y-%m-%d %H:%M:%S",struct_time)) #把结构化时间转化为数字 print(time.mktime(struct_time)) s1 = "1989-01-02 12:00:00" n1 = time.mktime(time.strptime(s1,"%Y-%m-%d %H:%M:%S")) s2 = "1990-01-02 14:35:00" n2 = time.mktime(time.strptime(s2,"%Y-%m-%d %H:%M:%S")) diff = abs(n2 - n1) # print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(diff))) deff_min = diff // 60 dispaly_hour = deff_min // 60 #得出小时 dispaly_min = deff_min % 60 #得出分钟 print(f"{dispaly_hour}小时{dispaly_min}分钟")#模块pickle序列化def new_pickle(): lst = ['周地','李四','王二嘛子'] pickle.dump(lst,open("pickle.dat",mode="wb")) #将对象序列化写入到文件 print(pickle.load(open("pickle.dat",mode="rb"))) #反序列化将对象读出来 bs = pickle.dumps(lst) obj = pickle.loads(bs) print(obj)#json序列化def new_json(): dic = {"复联4": "好看吗", "身边": "粉丝", "蔡徐坤": None, "坤坤": True, "段坤": False} s = json.dumps(dic,ensure_ascii=False) print(type(s)) s = json.loads(s) print(s) print(type(s)) f = open("json.txt",mode="w",encoding="utf-8") json.dump(dic,f,ensure_ascii=False) f.close() f = open("json.txt",mode="r",encoding="utf-8") json.load(f) f.close() print(dic)def new_os(): # os.mkdir(r"F:\python\day05\test") #创建一个文件 # os.makedirs(r"F:\python\day05\test\cc\aa") #创建多级目录 # os.removedirs(r"F:\python\day05\test\cc\aa") #删除多级目录,上层目录为空 # os.rmdir(r"F:\python\day05\test\aa\cc") #删除文件夹 # print(os.listdir(r"F:\python\day05\test")) #列出文件夹内的所有文件的名字 # print(os.system("dir")) #执行系统命令 # print(os.getcwd()) #获取工作目录 # os.chdir(r"F:\python\day05") #切换目录 # print(os.path.abspath("test")) #print(os.path.abspath("test")) # print(os.path.exists("哈")) #判断是否是存在文件或文件夹 # print(os.path.isfile("abc")) #判断是否存在文件 # print(os.path.isdir("abc")) #判断是否存在目录 # print(os.path.isabs(r"F:\python\day05")) #判断文件目录是否为绝对路径 # print(os.path.getatime(r"F:\python\day05")) # print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(1556537930.5277493))) # print(os.path.getctime(r"F:\python\day05")) # print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(os.path.getctime(r"F:\python\day05")))) # print(os.path.join("sdf","哈俣","sdf")) # print(os.path.getsize("test")) # print(os.path.split(r"F:\python\day05")) #切割文件目录获取文件目录和文件 def func(filepath,n): lst = os.listdir(filepath) for item in lst: #拿到的是文件名 fl = os.path.join(filepath,item) #拼接文件路径 if os.path.isdir(fl): print("\t"*n,item) func(fl,n+1) #开始递归 else: print("\t"*n,item) #文件名 func("F:\python\day05",1)#sys模块def new_sys(): print("我想知道:",sys.argv) #接受命令行参数,返回列表 ip = sys.argv[1] port = sys.argv[2] username = sys.argv[3] userpwd = sys.argv[4] sys.exit(n) # 退出,n代表是否正确退出。正常退出sys.exit(0),不正常退出是sys.exit(1) sys.version #获取python解释器程序的版本信息 sys.path #返回模块的搜索路径,初始化时使用pythonpath坏境的值 sys.platform #返回操作平台名称#re正则表达式(Regular Expression)#规定一个格式,匹配字符串用的def new_re(): # . 除了换行符以外的所有内容 # \d 匹配数字 # \n 匹配一个换行符 # \w 匹配字母或数字或下划线 # ^alex$ 必须是以alex开头和alex结尾的才能匹配 # \t 匹配一个制表符 # \b 匹配一个单词的结尾 # $ 匹配字符串的结尾 # \W 匹配非字母非数字非下划线 # \D 匹配非数字 # \S 匹配非空白符 # a|n 匹配字符a或字符b # () 匹配括号内的表达式,也表示一个组 # [...] 匹配字符组中的字符 # [^...] 匹配除了字符组中字符的所有字符 # # #量词: # * 表示匹配0次或者多次,尽可能多的匹配,没有可以匹配,以空格表示 # + 表示匹配1次或多次 至少匹配一次 # ? 表示0次或者1次,说白了要么出现要么不出现 # {n} 表示重复n次 \d{11} 次 比如11位电话号码 # {n,}表示重复n次或更多次 # {n,m} 5-7 重复n次到m次,也就是说可以重复5次6次7次 # sample : # shikun.zhou@126.com \w+@\w+\.(com|net|org) # .*?x 离它最近的x结束匹配. 惰性匹配 # ^[1-9]\d{13-16}[0-9x]$ # ^[1-9]\d{14}(\d{2}{0-9x})?$ # ^([1-9]\d{16}[0-9x]|[1-9]\d{14})$ lst = re.findall(r"\d+","今天吃了两次鸡,你吃了几12次0123") #查找所有的内容并返给你一个列表 print(lst) it = re.finditer(r"\d+","今天吃了两次鸡,你吃了几12次0123") #返回迭代器 print(it) aa = re.search(r"\w+", "") # 查找 print(aa.group()) re.match(r"\w+","") print(re.match(r"\w+","").group()) #(r"^\w+","")从头匹配,类似在你正则前面多一个^角号 obj = re.compile(r"\w+") #将正则加载到内存 # obj.match() # obj.search() # obj.finditer() # cc = obj.findall("天吃了两次鸡,你吃了几12次0123") # for item in it: # print(item.group()) # print(cc) s = "<span><div>倚天屠龙</div><div>少林武当</div></span>fasdfasdfsda</div>" it = re.finditer(r"<div>(?P<dy>.*?)</div>",s) #匹配分组,从正则里面拿数据 for itme in it: print(itme.group("dy"))if __name__ == '__main__': #new_zip() #new_counter() #new_defaultdict() #new_deque() #new_random() #new_time() #new_pickle() #new_json() #new_os() new_re()
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #python常用的模块有哪些