用户:查看:6 回复:12 评论:6 创建时间:2017-07-27T03:21:20
Dear w.rong:
很高兴看到你的提问,也很高兴看见你自己在探索python语言。
刚刚@构造函数做出了很好的解释,考虑到英语文档可能阅读起来还是会有困难,可以看一下中文的文档:
http://python.usyiyi.cn/translate/python_352/howto/argparse.html
文档里已经写得比较清晰,也列出了很多个例子。把基础的几个例子做一做,就能知道怎么使用了(这个是python3的)以后各位遇到一些不懂的标准库,都可以在这里用 ctrl+F 找找看http://python.usyiyi.cn/translate/python_352/library/index.html
看到这里,懂得面向对象的各位可以去练习一下了。
接下来要重点跟各位说的是面向对象的思想。
简单来说,以“狗”为一个例子:
“Dog”是一种统称的种类,在“Dog”这个种类里,我们定义“叫”的函数,和“吃”的函数:
(这里python等和编程猫里的函数的区别在于,编程猫里定义的函数是所有人都能用的,而python一个种类里定义的函数,只有这种种类的对象能使用,这里不一样。)
实际上我们写程序的时候,我们需要创建一只叫“阿旺”的Dog,这时候我们这样写:
阿旺 = Dog( )
那怎么让阿旺叫起来呢?因为所有的Dog都已经被定义好了 “叫” 这个函数,这时候我们通过 . 这个符号来调用:
阿旺.叫()
点的意义就是编程猫平台上的“告诉”(p.s 这个模块是叶知易发明贡献的),
阿旺.叫() 的意思就是
告诉 阿旺 执行函数‘叫’
接下来我们来天马行空,想象一个小东西叫“烧瓶里的小人”(是的tc也很喜欢钢炼),这个“烧瓶里的小人”可以化身为任何意义上的“东西”,不仅是实体的事物,也包括行为,以及更抽象的规则,计划和事件。
我们让它化身为 “阿旺叫了” 这个行为吧:
烧瓶里的小人 = 阿旺.叫()
这是你会看到程序里有这样语句的原因: parser=argparse.ArgumentParser()
这里面左边的 parser 就是 “烧瓶里的小人”,一个随便起的名字,右边是你让它化身做的“东西”抑或行为抑或规则。
万物皆可为对象。
好,面向对象我们先讲到这里,下面讲些英文:
args 其实在编程里一般是 arguments 的缩写
arg 是 argument 的缩写
arguments 是 argument 的复数,意思是“参数”
你们有时候也会碰到形参parameter, 就当成也是是arg就行了,暂时我们还不需要讲两者的区别。
关于“面向对象”的知识,我们今天讲的都是“封装”这个特性,在这个阶段,你们只要先了解面向对象的第一个特性“封装”就够了,
至于另外两个特性“继承”和“多态”,等哪天我们涉及到了再讲。
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
点赞0
评论
嗯嗯,解释得很详细,我只是注意到了语病~
继承我好像知道一点,就是在一个母集里面子方法或属性具有继承性,然后这些继承的东西可以应用到这个类别里面其它的实例,参数好像也可以调用。只是还没研究到“多态”,TC总是说人话,很好的呢,有句话叫“Python中一切皆是对象”,看来此言非虚。
点赞0
评论