我在OOP Python的初学者,我只是想知道这一点:如何类/模块的定义传递到另一个文件
这是file.py:
class Card():
def __init__(self, rank, suit):
"""Initialization method"""
self.rank = rank
self.suit = suit
def get_rank(self):
"""Function get_rank returns a rank (value) of the card"""
return self.rank
当我想创建并在该文件中传递对象的功能“get_rank”,我可以这样做:
card1 = Card(10,"Diamond")
card1.get_rank()
但我怎么可以创建和在另一个文件传递一个对象?还有另一个文件叫做test_file.py,它是一个测试文件(py.test)。所以file.py仅用于代码,test_file.py代表传递给file.py的参数(变量和对象)。在test_file.py也是变量“expected_result”与正确的结果。然后当我使用“py.test”(bash)时,它显示我,如果结果是正确的。
我明白这种非OOP例如: abs.py:
def split_text(text): - code -
test_abs.py:
def test():
text = 'abcdefgh'
请帮帮忙,感谢您的任何意见:)
在Python中,不必要的访问器是不满意的。这是一个Java成语 - 没有必要像'get_rank'这样的函数。使用'card1.rank',并且如果你需要一个不重要的存取函数,则使它成为一个属性。 – user3426575 2014-11-23 02:17:18
[Python标准约定](http://stackoverflow.com/questions/5978557/association-between-naming-classes-and-naming-their-files-in-python-convention)建议:由于您的文件定义了* Card *类(和/或甲板,手等),称它* card.py *。永远不要将它称为file.py,就像@HaiVu所说的那样。 – smci 2014-11-23 03:00:56
我会记住不再使用“file.py”。 :) – 2014-11-23 19:49:21