声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好的理解人工智能技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是要由所写,所以不如我的人工智能技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!
经常会有新手在阅读他人代码时提出这样的问题:这个对象有些什么方法呀?这个函数是什么意思怎么用呀?百度查了老半天但是查不到呀…
其实根本不需要去百度查,或者是去到处问人。因为python内部有专门的函数来帮助你。
对于一个对象,你可以调用内置的dir函数,它将会返回一个列表,其中包含了对象的所有属性。由于方法是函数属性,它们也会在这个列表中出现:
.>>> dir(S)
['_._add_._','_._class_._','_._contains_._','_._delattr_._','_._doc_._','_._eq_._',
'_._format_._','_._ge_._','_._getattribute_._','_._getitem_._','_._getnewargs_._',
'_._gt_._','_._hash_._','_._init_._','_._iter_._','_._le_._','_._len_._','_._lt_._',
'_._mod_._','_._mul_._','_._ne_._','_._new_._','_._reduce_._','_._reduce_ex_._',
'_._repr_._','_._rmod_._','_._rmul_._','_._setattr_._','_._sizeof_._','_._str_._',
'_._subclasshook_._','_formatter_field_name_split','_formatter_parser',
'capitalize','center','count','encode','endswith','expandtabs','find',
'format','index','isalnum','isalpha','isdecimal','isdigit','isidentifier',
'islower','isnumeric','isprintable','isspace','istitle','isupper','join',
'ljust','lower','lstrip','maketrans','partition','replace','rfind',
'rindex','rjust','rpartition','rsplit','rstrip','split','splitlines',
'startswith','strip','swapcase','title','translate','upper','zfill']
这个列表的变量名中有下划线的内容代表了字符串对象的实现方式,并支持定制,这个知识点我们以后再学习,当前先忽略它们。而这个列表中没有下划线的属性是字符串对象真正能够调用的方法。
dir函数只是简单地给出了方法的名称。要查询它们是做什么的,你可以将其传递给help函数。
.>>> help(S.replace)
Help on built-in function replace:
replace(...)
S.replace (old,new[,count]) -> str
Return a copy of S with all occurrences of substring
old replaced by new.If the optional argument count is
given,only the first count occurrences are replaced.
就像PyDoc一样(一个从对象中提取文档的工具),help是一个随Python一起分发的面向系统代码的接口。后面你将会发现PyDoc还能够将其结果生成HTML格式。
你也可以对整个字符串使用帮助查询函数[例如,help(S)],它会返回所有的字符串方法的详细信息。一般最好去查询一个特定的方法,就像我们上边所做的那样。
我的微信公众号是“人工智能知识分享”