一、日期/时间:
import datetime
datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
2021-02-02 14:00:00
datetime.datetime.now().strftime("%Y.%m.%d")
2021.02.02
datetime.datetime.now().strftime("%Y-%m-%d")
2021-02-02
datetime.datetime.now().strftime("%Y%m%d")
20210202
import time
time.time() # 十位时间戳
二、python判断字符串的字母、数字情况(true or false)
1、str.isalnum() 所有字符都是数字或者字母
2、str.isalpha() 所有字符都是字母
3、str.isdigit() 所有字符都是数字
4、str.islower() 所有字符都是小写
5、str.isupper() 所有字符都是大写
6、str.istitle() 所有单词都是首字母大写
7、str.isspace() 所有字符都是空白字符、\t、\n、\r
三、格式化输出
1、print("%d"%index)
2、python format
函数:使用{}代替%
print("{} {}".format(“hello”,“world”))
print("{1} {0} {1}".format(“hello”,“world”))
3、python 格式化字符串f-string概览
name=“Amy”
univer=“Tsinghua University”
f"Hello,my name is {name},my university is {univer}"
四、Split
以.为分隔点,分离字符串str,只分离一次,返回一个含两个元素的列表。
a,b=str.split(".",1)
五、replace
str.replace(old,new[,max])
str = "this is string example....wow!!! this is really string";
str.replace("is","was")
str.replace("is","was",3)
# 数据清洗常用:
str.replace("\n", "").replace("\t", "").replace("\xa0", "").replace("\r", "").replace("\u2022", "").lstrip() .rstrip().replace(' ', '')
六、遍历多级文件夹里面的文件:
1、 python标准库 glob
glob 文件名模式匹配,不用遍历整个目录判断每个文件是不是符合
(1)、通配符 星号(*)匹配零个或多个字符
(2)、通配符 问号(?)匹配任何单个字符
(3)、字符范围 需要匹配一个特定的字符,可以使用一个范围
2、 dirs=os.listdir(path) # 获取path路径下的所有文件夹名,返回列表
3、 root=os.path.join(root,dir,'*.html') # 获取所有以html结尾的文件(不是一个完整的名称),返回list
filenames=glob.glob(root) # 返回所有以html结尾的文件名,返回list
七、打开文件,写入文件,写进去的只能是字符串
with open(path,'r',encoding="utf-8") as f:
print(f.read())
with open(path,'w') as f:
f.write(content)
八、python中数据类型的互转:list str dict tuple
1、list转str:test_str = "".join(test_list)
# 如果列表里面的元素转为str后还想独立分开,则加逗号(中文)隔开:
",".join(test_list)
2、str转list:test_list=list(test_str)
3、list转dict:
l=['a','b'.'c']
t=[1,2,3]
zip(l,t)
dict(zip(l,t))
将嵌套列表转为字典:
l=[['a',1],['b',2],['c',3]]
dict(l) {'a':1,'b':2,'c':3}
4、dict转list:
字典中键、值转为列表
d={'a':1,'b':2}
list(d.keys()) <<['a','b']
list(d.values()) <<[1,2]
5、list转tuple:
num_list=[1,2,3,4]
# 整个列表变元素
num_tuple=tuple(num_list)
# 元素变成元组
[(x,) for x in num_list]
6、tuple转list:
num_tuple=(1,2,3,4,5)
num_list_01 = list(num_tuple)
7、str转dict:eval() loads
1、import json;dict=json.loads(str)# 建议少用,会出现编码问题
2、a="{'a': 'hi', 'b': 'there'}"
b=eval(a) #b 是字典
8、dict转str:遍历dict中的所有元素可以实现字典到字符串的转换 强转换/dumps
for key,value in sample_dict.items():
print(key,value)
1、import json;str=json.dumps(dict) # 建议少用,会出现编码问题
2、d={'a':1,'b':2}
str(d)
9、str转tuple:
a='hh'
b=str2tuple(a)
10、tuple转str:
t1=("aa","bb","cc")
t2="".join(t1)
11、dict转tuple:
12、tuple转dict:
九、python列表去掉最后一个元素
1、pop方法 删除最后一个元素
list=[1,2,3,4]
list.pop()
print(list)
2、del方法
list = [1,2,3,4]
del(list[-1])
print(list) # [1, 2, 3]
3、切片
list = [1,2,3,4]
list = list[0:-1]
print(list) # [1,2,3]
十、python删除字典元素的4种方法
1. Python字典的clear()方法(删除字典内所有元素)
dict = {'name': '我的博客地址', 'alexa': 10000, 'url': 'http://blog.csdn.net/uuihoo/'}
dict.clear(); # 清空词典所有条
2.Python字典的pop()方法(删除字典给定键 key 所对应的值,返回值为被删除的值)
site= {'name': '我的博客地址', 'alexa': 10000, 'url':'http://blog.csdn.net/uuihoo/'}
pop_obj=site.pop('name') # 删除要删除的键值对,如{'name':'我的博客地址'}这个键值对
print pop_obj # 输出 :我的博客地址
3、Python字典的popitem()方法(随机返回并删除字典中的一对键和值)
site= {'name': '我的博客地址', 'alexa': 10000, 'url':'http://blog.csdn.net/uuihoo/'}
pop_obj=site.popitem() # 随机返回并删除一个键值对
print pop_obj # 输出结果可能是{'url','http://blog.csdn.net/uuihoo/'}
4、 del 全局方法(能删单一的元素也能清空字典,清空只需一项操作)
site= {'name': '我的博客地址', 'alexa': 10000, 'url':'http://blog.csdn.net/uuihoo/'}
del site['name'] # 删除键是'name'的条目
del site # 清空字典所有条目
十一、Python enumerate() 函数
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print(i, element)
0 one
1 two
2 three
十二、两个列表转为字典
list_key:["name","age","job"]
list_value:["Amy",18,"teacher"]
dict(zip(list_key,list_value))
{'name': 'Amy', 'age': 18, 'job': 'teacher'}
十三、xlrd、xlwt和openpyxl非python自带库
如果excel文件是xls,2003版的,使用xlrd(读)和xlwt(写)库来对xls文件进行操作
如果excel文件是xlsx,2007以上版的,使用openpyxl库来对xlsx(既能读还能写)文件进行操作
(1)对于2003版本的xls文件,最大行数是65536行
(2) 对于2007版本的xlsx文件,最大行数是1048576行
十四、遍历字典的几种方式
1、遍历key值
a={'a': '1', 'b': '2', 'c': '3'}
for key in a:
print(key+':'+a[key])
a:1
b:2
c:3
for key in a.keys():
print(key+':'+a[key])
a:1
b:2
c:3
在使用上,for key in a和 for key in a.keys():完全等价。
2、遍历value值
for value in a.values():
print(value)
1
2
3
3、遍历字典项
for kv in a.items():
print(kv)
('a', '1')
('b', '2')
('c', '3')
4、遍历字典健值
for key,value in a.items():
print(key+':'+value)
a:1
b:2
c:3
for (key,value) in a.items():
print(key+':'+value)
a:1
b:2
c:3
在使用上for key,value in a.items()与for (key,value) in a.items()完全等价
十五、两个列表获取交集,并集,差集
list1=[1,2,3,4,5,6]
list2=[1,2,3]
# 交集
list3=list(set(list1).union(set(list2)))
# 差集
ist3=list(set(list2).difference(set(list1))) # list2中有而list1中没有的
结果为空:[]
list3=list(set(list1).difference(set(list2))) # list1中有而list2中没有的
结果为:[1,5,6]