函数 | 用法 | 解释 |
---|---|---|
abs(x) | abs(-20) | 取绝对值 |
max(x) | max(-1,2,3,6,3…) | 取这些传进来的数中间最大的数 |
map(f(x),list or tuple or string) | map(abs,[-1,-2,-3,4,6]) | 对传进来的列表里面的数每个都取绝对值 |
reduce(f(x),list or tuple or string) | reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4) | 把结果继续和序列的下一个元素做累积计算 |
fillter(f(x),list or tuple or string) | filter(f,[1,2,3,4,5]) | 根据每个参数穿进去之后的最终值TRUE或者false来返回过滤之后的值 |
sorted(list) | sorted([1,2,1,4,3],key=abs,reverse=True) | 根据绝对值进行反转排序,输出的还是原来的那个序列的值,注意被排序的对象必须是iterable的,并且sorted是对排序对象的每一个元素依次进行函数处理再根据函数处理的结果排序 |
s=operator.itemgetter(int) | s=operator.itemgetter(1 or 1,2,or 1,2,3) ) | 此方法是定义一个函数,使用时必须调用s(list or others),取出要取出的数中的某个位置的值 |
s=functools.partial(int, base=2)or smax=functools.partial(max,10) | smax(1,4,5) 输出:10 | 把函数后面的那个参数当成函数的参数传给函数,即创建一个新的函数 |
type() | type(3) 输出:int | 判断参数的类型 |
isinstance() | isinstance(h,(s,f)) | 判断h是s类型或者f类型的 |
lower() | ‘A’.lower() | 返回小写的字符串 |
strip() | ‘ A ’.strip( ‘0’ ) ‘ A ’.strip( ) | 去除首尾的‘0’字符 去除首尾的空格 |
os.path.abspath(’.’) | 输出:目录的绝对路径 | 查看当前目录的绝对路径 |
os.path.join(’/Users/michael’, ‘testdir’) | 输出:拼接后的目录路径:/Users/michael/testdir | 输出:拼接后的目录路径:/Users/michael/testdir |
os.mkdir(’/Users/michael/testdir’) | os.mkdir(’/Users/michael/testdir’) | 创建一个目录/Users/michael/testdir |
os.rmdir(’/Users/michael/testdir’) | os.rmdir(’/Users/michael/testdir’) | 删掉/Users/michael/testdir目录 |
os.path.split() | os.path.split(’/Users/michael/testdir/file.txt’) | 拆分文件:输出:(’/Users/michael/testdir’, ‘file.txt’) |
os.path.splitext() | os.path.splitext(’/path/to/file.txt’) | (’/path/to/file’, ‘.txt’) |
os.rename(‘test.txt’, ‘test.py’) | 对文件重命名test.txt变成test.py | |
os.remove(‘test.py’) | 删掉文件 | |
os.listdir(’.’) | 列出当前目录下的所有目录 | |
os.path.isdir(x) | 判断x是一个目录 | |
os.path.isfile(x) | 判断x是一个文件 | |
pickle.dump() | pickle.dump(d, f) | 把d对象序列化成一个bytes,然后,就可以把这个bytes写入f文件。或者用另一个方法pickle.dump()直接把对象序列化后写入一个file-like Object |
pickle.dumps() | pickle.dumps(f) | 把f对象序列化成一系列的bytes |
pickle.loads() | pickle.loads(f) | 把f字符串反序列化出对象 |
pickle.load() | pickle.load(f) | 把f文件反序列化出对象 |
json.dumps() | json.dumps(d) | 把d返回一个标准的json格式的str |
json.dump() | json.dump(d,f) | 把d改为一个标准的json格式的str并输出到f文件中 |
json.loads() | json.loads(f) | 把f,JSON反序列化为Python对象 |
json.load() | json.load(f) | 把f文件中的json字符串取出来反序列化为python对象 |
re.match() | m=re.match(r’regx’,‘test_str’) | 验证test_str字符串是否能被regx正则表达式匹配上,能匹配上返回一个match对象,否则返回None,可以在Match对象上用group()方法提取出子串来正则表达式中使用()就是想要提取出的分组,即m.group(0)输出是完整的原始字符串,m.group(1)输出的就是输出的子串 |
split() | ‘str’.split() | ‘a f dd f’.split()=[‘a’, ‘f’, ‘dd’, ‘f’] ‘a f dd f’.split(’ ')=[‘a’, ‘f’, ‘dd’, ‘’, ‘’, ‘’, ‘f’] |
re.split(r’regx’, ‘test_str’) | re.split(r’\s+’, ‘a b c’) | re.split(r’\s+’, ‘a b c’)=[‘a’, ‘b’, ‘c’]、 |
datetime 模块 | from datetime import datetime | datetime.now()获取当前时间 |
dt = datetime(2015, 4, 19, 12, 20)用指定日期时间创建datetime,2015-04-19 12:20:00 | ||
dt.timestamp() # 把datetime转换为timestamp | ||
datetime.fromtimestamp(1429417200.0)把timestamp转换为datetime(转为本地时间) | ||
datetime.utcfromtimestamp(1429417200.0)把timestamp转换为datetime(转为UTC时间) | ||
datetime.strptime(‘2015-6-1 18:19:59’, ‘%Y-%m-%d %H:%M:%S’)一个日期和时间的格式化字符串,详见:python文档 | ||
now = datetime.now(),now.strftime(’%a, %b %d %H:%M’)=Mon, May 05 16:28已经有了datetime对象,要把它格式化为字符串显示给用户 | ||
now = datetime.now(),now + timedelta(hours=10),现在之后的十个小时时间 | ||
now - timedelta(days=1),现在的时间往前的一天 | ||
以下为(列表)类型数据的方法,test为一个list,testobj为一个对象,testseq为一个元组 | ||
len(test) | 返回test的元素个数 | |
max(test) | 返回test中最大的值 | |
min(test) | 返回test中最小的值 | |
list(testseq) | 把testseq元组类型数据抓换为列表类型数据 | |
test.append(testobj) | 在test的末尾加上testobj,比如testobj由5个元素组成,这5个元素就会被作为一个整体加入到test的最后面 | |
test.count(testobj) | 统计testobj在test中出现的次数 | |
test.extend(testobj) | 把testobj扩展到test中,比如testobj由5个元素组成,这5个元素就会被分别依次加入到test的最后面 | |
test.index(testobj) | 找出testobj第一次出现在test中的元素下标 | |
test.insert(testindex,testobj) | 在test中的testindex的位置插入testobj | |
test.pop(testindx) | 在test中删除testindex下标的元素,并且返回这个元素,testindex可不传,不传默认删除列表的最后一个元素并返回这个元素 | |
test1.intersection(test2) | 求test1和test2的交集 | |
itest1.difference(test2) | 求test1和test2的差集 | |
test.remove(testobj) | 移除test中的testobj元素,移除成功返回None | |
test.reverse() | 反转列表中的所有元素 | |
test.sort() | 对test进行排序,可降序排序 | |
test.clear() | 清空test | |
test.copy() | 复test,这个与直接用“=”的区别是用=进行赋值,如果改变了原来列表的值,新的复制的值也会被改变,用copy()不会这样 | |
以下为字典类型数据方法,test为一个dict,testobj为一个对象 | ||
test.clear() | 清空test | |
test.copy() | 返回test的浅拷贝 | |
dict.fromkeys(testobj,defaultvalue) | 创建一个字典,字典的key是testobj里面的值,每个key的value是defaultvalue,defaultvalue可不传,不传默认为None | |
test.items() | 遍历test里面的key和value | |
test.keys() | 找出test里面的键值 | |
test.setdefault(‘key’,defaultvalue) | 在test中查找‘’key‘’的value值,如果没有找到key,就把key插入进test中,value为defaultvalue,不传defaultvalue的话默认为None | |
test.update(testdict) | 把testdict里面的键值对更新到test中 | |
test.values() | 找出test中的value值 | |
test.pop(key,defaultvalue) | 把test中的key删除,返回的值是该key的value,如果没有的话返回defaultvalue,这个defaultvalue还是传一下比较好,因为在test中有key的时候如果没传defaultname会正常返回key的value值,但是如果test中没有key的话且没传defaultvalue的时候会直接报错 | |
test.popitem() | 随机删除test中的一对键值对 |
python常用函数
最新推荐文章于 2021-03-02 00:58:16 发布