1._all_

__all__是一个字符串list,其他模块中使用from xxx import *的时候只能导入__all__列表里的内容

2.sys.version_info

获取版本号

import sys
print(sys.version_info)

输出

sys.version_info(major=3, minor=7, micro=2, releaselevel='final', serial=0)

比较时候

 sys.version_info >= (3, 4) #是个元组

3.inspect.unwrap

装饰器的解包,前提是装饰器上添加了@wraps(func)装饰器。

参考链接:https://www.cnblogs.com/blackmatrix/p/6875359.html

4.__wrapped__获取被装饰之前的方法

5.判断是否是方法 inspect.isfunction

如果是输出True,否则False。

4-5涉及的代码

from functools import wraps
import inspect
def log(func):
@wraps(func)
def wrapper(*args, **kwargs):
result = func(*args)
print(func.__name__,'has been called')
return result
return wrapper #等价于add = log(add)
@log
def add(x, y):
result = x+y
return result if __name__ == '__main__':
print(add(1, 3))
print(inspect.isfunction(int))
orig_add = add.__wrapped__
print(inspect.isfunction(orig_add))
print(orig_add(1,3))

输出

add has been called
4
False#int不是方法所以输出了Flase
True
#上面的是被装饰器装饰后的函数调用结果
#下面是被装饰前的函数的结果
4

6.__code__获取代码行数或者代码所在文件

用的还是4-5的代码

    if inspect.isfunction(orig_add):
code = orig_add.__code__
print (code.co_filename, code.co_firstlineno)

输出

/Users/chennan/pythonproject/demo/asyncdemo/1.py 12

最新文章

  1. 体验报告:微信小程序在安卓机和苹果机上的区别
  2. wpf之mvvm基类
  3. x-editable 的使用方法
  4. c# GridView有关RowClick事件,可单击显示选中的row
  5. java generic type
  6. hibernate.cfg.xml配置(Oracle+c3p0)
  7. UINavigationController使用详解
  8. WordPress 全方位优化指南(上)
  9. 多线程——NSThread
  10. Big Data Solution in Azure: Azure Data Lake
  11. Asp.net mvc 知多少(一)
  12. web api 安全设计(1)
  13. WebGL three.js学习笔记 创建three.js代码的基本框架
  14. JS HTML倒计时 进入页面
  15. accept:Invalid Argument
  16. Java编程:悲观锁、乐观锁的区别及使用场景
  17. log4j.properties配置详解与实例-全部测试通过[转]
  18. Could not resolve all files for configuration;Andriod在build.gradle添加compile files()报错
  19. CCF CSP 201409-3 字符串匹配
  20. sleep(),wait(),yield()和join()方法的区别

热门文章

  1. reportgen :python生产pptx
  2. Jz2440 环境安装
  3. protobuf 编译安装
  4. Linxu系统下JDK1.7(rpm)安装
  5. Sqlcmd使用详解
  6. python -- conda pytorch
  7. termux 开启 sshd
  8. Image转Base64
  9. DevExpress Winform 常用控件
  10. html页面设置<span>的高度和宽度