Python那些有用的小知识点1

关注我的微信公众号:pythonislover,领取python,大数据,SQL优化相关视频资料!~

Python大数据与SQL优化笔 QQ群:771686295

 

1. global 修改全局变量

a=5def change():    a=3change()print(a)  # 5
######################################a=5def change():    global a    a=3change()print(a)  # 3

 

2. Python GIL (来源于网络,感觉解释的比较好  程序IT圈 )

GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。

多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器,所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大

 

3.assert()方法,断言成功,则程序继续执行,断言失败,则程序报错

 

a=7assert a>5print('asset go on!~')
assert a>9print('asset failed!~')
asset go on!~  File "C:/Users/Augus/PycharmProjects/mystudy/knowlage.py", line 5, in <module>    assert a>9AssertionError

 

4.map函数,这个函数的意思就是将function应用于iterable的每一个元素,结果以map的形式返回。常用lambda一起使用的

格式:map(function, iterable, …)

function: 自定义函数,内置函数等

iterable:可迭代对象,如列表,元组,字符串,并且map后面可以接多个iterable对象

 

def maptest(a):    return a*a
print(list(map(maptest,[1,2,3]))) #自定义函数
[1, 4, 9]

a=list(map(str,'python')) # 内置函数print(a)
['p','y','t','h','o','n']
lambda函数:print(list(map(lambda x: x ** 2, [1, 2, 3,]))) #lambda x: x ** 2相当于上面的自定义函数
[1, 4, 9]

 

5.Glob()查找文件

import glob #查询一类文件
files = glob.glob('*.py')print(files)
['knowlage.py', 'log.py', 'slice.py']

 

  • 类文件 import glob,itertools # files = glob.glob('*.py')# print(files) def get_files_miltiple(*args): return itertools.chain.from_iterable(glob.glob(pat) for pat in args) for file in get_files_miltiple("*.py","*.log"): print(file)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值