Python组织项目,扩展名为Swift

时间:2018-01-29 16:45:47

标签: python

我是来自Swift的python新手。在Swift中,我可以创建一个新文件,并使用extension关键字将代码添加到现有类中。 python是否有类似的方法来执行此操作,或者所有源代码是否都需要在单个文件中?

我想这样做是为了帮助组织我的项目。

2 个答案:

答案 0 :(得分:2)

在Python中,函数是一等公民。这意味着您可以像分配其他值一样为函数分配函数。特别是,您可以向类添加一个函数,如下所示:

class Foo:
  def foo(self):
    print('foo')

def bar(self):
  print('bar')
Foo.bar = bar

f = Foo()
f.foo()
f.bar()

请注意,即使bar()是全局声明的,它仍然必须至少使用一个参数。传统上,成员函数的第一个参数称为self,但这只是一种约定,并不是由语言强制执行的。

答案 1 :(得分:0)

使用tbody/** <table><tbody> <tr> <td>personId</td> <td>y</td> <td>identifiant</td> <td>C16</td> <td>String</td> </tr> <tr> <td>lastName</td> <td>n</td> <td>nom</td> <td>C32</td> <td>String</td> </tr> </tbody></table> */ public void foo(){ ... } 关键字时,Python也会查找与基本文件相同的导演。

建立在Code-Apprentice的答案之上,你也可以从这样的类中轻松继承(如果你想扩展import类的功能:

from

然后,您可以将list放在与另一个class NewList(list): # inherit from the list class @property def sqrt_len(self): return len(self) ** .5 nl = NewList([1, 2, 3, 4]) print(nl.sqrt_len) # prints "2.0" to stdout 相同的目录中,并使用newlist.py.py

请注意,确保没有与您的文件名称冲突,并且您要用作python的另一个包的名称将首先导入同一目录中的文件。