Python使用inspect查看代码参数

使用import inspect查看python 类的参数和模块、函数代码

文件就是最小的模块,文件夹是比较大的模块。

文件里面可以包含类,函数。

函数可以执行一个操作,多个函数组合在一起可以写为一个模块,根据不同事物写成一个类,这个类包含几个行为写成几个类内的函数,也可以将这些作为一个文件。

主要步骤是将文件路径设置到系统,再将文件作为模块引入,再开始查看文件里面的内容。

首先,写了一个函数

def h():
    print "hello"

def hm(m,k):
    print m, k

class w(object):
    def __init__(a, self):
        name =a
    def g(self):
        print name,"hello world!"

保存在路径C:\下,起个名字叫hello.py

打开python shell 窗口,将这个路径加入到系统路径里。命令如下

import sys

sys.path.append(‘C:/‘)

将文件当做一个模块引入。

import hello

import inspect

查看整个模块hello的源代码: inspect.getsource(hello)  整个样子不好看,需要print inspect.getsource(hello)

查看模块hello里面wo这个类的全部代码  print inspect.getsource(hello.w)

查看模块内某个函数的代码: print inspect.getsource(hello.h)

查看模块内某个类中函数的代码 print inspect.getsource(hello.w.g)

查看模块中某个函数的参数的代码:inspect.getargspec(hello.hm)

查看模块中类的参数代码 inspect.getargspec(hello.w.__init__)   #这里还是查看类的初始定义函数。

查看类中函数参数代码 inspect.getargspec(hello.w.g)

查看模块路径 inspect.getabsfile(hello)

查看文件夹模块中某个类的路径 inspect.getabsfile(。。。)#结果是显示类的初始定义函数__init__.py的位置。

>>> inspect.getabsfile(django.db) ‘c:\\python27\\lib\\site-packages\\django-1.7.1-py2.7.egg\\django\\db\\__init__.py‘

这些应该够学习用了。以后有什么再补充。

时间: 2024-08-28 05:54:48

Python使用inspect查看代码参数的相关文章

python的inspect模块2

转自:http://blog.csdn.net/mldxs/article/details/8652010 一.inspect模块主要提供了四种用处: (1).对是否是模块,框架,函数等进行类型检查. (2).获取源码 (3).获取类或函数的参数的信息 (4).解析堆栈 使用inspect模块可以提供自省功能,下面是关于自省的一些介绍, 首先通过一个例子来看一下本文中可能用到的对象和相关概念. import sys                  # 模块,sys指向这个模块对象 def fo

python的inspect模块

一.type and members 1. inspect.getmembers(object[, predicate]) 第二个参数通常可以根据需要调用如下16个方法: 返回值为object的所有成员,以(name,value)对组成的列表 inspect.ismodule(object): 是否为模块inspect.isclass(object):是否为类inspect.ismethod(object):是否为方法(bound method written in python)inspect

python 之初学者的代码示例(短小精悍)(一)

学习Python也有个把月了,最近整理自己初学的代码示例,一个是为了增加自己对细节的把握,一个是让像我一样的初学者能够熟练地使用基础,基础的重要性就不说了,我希望自己能够把这些精巧的小而短的示例分享给大家,共同进步 #help(execfile) Help on built-in function execfile in module __builtin__: execfile(...) execfile(filename[, globals[, locals]]) Read and execu

python函数 位置参数,关键字参数,可变参数优先级

def fun(arg,args=1,*arg,**keywords): python 一共有这四类参数,第一类最常见,不用多说,第二类,关键字参数,python能通过关键字找到参数,python函数的这种特性使得函数参数更加灵活,不一定要按顺序来传,第三类:一个星号是将非关键字参数收集起来,以tuple的形式保存,第四类则必须要提供”传递参数名=传递参数值”形式传递参数. 至于怎么传,相信大家都知道,这里不多说. 要说明的是在python2中这四类参数传递时是有优先顺序的,不管是定义函数,还是

Python中文转拼音代码(支持全拼和首字母缩写)

本文的代码,从https://github.com/cleverdeng/pinyin.py升级得来,针对原文的代码,做了以下升级: 1 2 3 4 1.可以传入参数firstcode:如果为true,只取汉子的第一个拼音字母:如果为false,则会输出全部拼音: 2.修复:如果为英文字母,则直接输出: 3.修复:如果分隔符为空字符串,仍然能正常输出: 4.升级:可以指定词典的文件路径 代码很简单,直接读取了一个词典(字符和英文的映射),然后挨个替换中文中的拼音即可: Python 1 2 3

python 学习笔记 11 -- 使用参数使你的程序变得更性感

当然,在之前的系列中,我已介绍如何给 Python 脚本传参,当然,今天不会继续介绍这么无聊的东东.首先使用 python 的sys.argv 传参的话,就固定了参数的个数.顺序以及格式,这么死的规定如何性感? I have a dream , to make my code much sexer ! 今天我们简单介绍一下如何更加随性的给 python 脚本传参.效果如下: [email protected]:/tmp$ python arg.py -h NAME: project with u

python机器登陆新浪微博代码示例

前段时间开始学习Python,一直想不到有什么好的小项目可以做,憋得慌,这不, 绞尽脑汁想出了一个爬取新浪微博,并对爬取数据做简单统计的项目.一开始我自以为学习了点Python正则就可以搞定了,熟料在机器登陆上栽了跟头,从完全一头雾水到现在初步登陆获取到数据,整整历经了四五天.因为之前没搞过机器登陆方面的代码,所以这次项目的初步完成完全归功于网上的一些大神,我只是拾人牙慧,拼凑了几个大神的代码,另外加几行注释而已. # import 这边需要注意的是只有一个rsa这个模块是需要install的,

python 图像归一化作业代码代编程代写图python作业

python 图像归一化作业代码代编程代写图python作业from PIL import Image import os import sys import numpy as np import time from sklearn import svm # 获取指定路径下的所有 .png 文件 def get_file_list(path): return [os.path.join(path, f) for f in os.listdir(path) if f.endswith(".png&

Python函数的定义、参数传入与函数的调用

作为计算机代码的一种抽象方式,函数在Python中扮演了极为重要的角色.今天给大家介绍Python函数的定义.参数的传入以及调用方式.其中函数参数的传入方式为本节重点内容.Python函数的参数形式包括必选参数.默认参数.可变参数.命名关键字参数以及关键字参数.五类参数可单独传入也可组合传入. >>>> Python 函数的定义 Python中使用def语句来定义函数,然后依次写出函数名.括号.括号内的参数以及最后不能忘记的冒号,函数体需另起一行在缩进块中编写,最后返回值用retu