我有一些代码,基本上看起来像这样:
class Base(object):
def __init__(self, *args, **kwargs):
super(Base, self).__init__(*args, **kwargs)
def test_echo(self, test_string):
''' echo test '''
response, status_code = self.__agent__.Util.post_v1_util_echo(sessionToken=self.__session__,
keyManagerToken=self.__keymngr__,
echoInput={"message": test_string}
).result()
return status_code, response
def create_datafeed(self):
''' create datafeed '''
response, status_code = self.__agent__.Datafeed.post_v4_datafeed_create(sessionToken=self.__session__,
keyManagerToken=self.__keymngr__
).result()
# return the token
return status_code, response['id']
def read_datafeed(self, datafeed_id):
''' get datafeed '''
response, status_code = self.__agent__.Datafeed.get_v4_datafeed_id_read(sessionToken=self.__session__,
keyManagerToken=self.__keymngr__,
id=datafeed_id
).result()
return status_code, response
def send_message(self, threadid, msgFormat, message):
''' send message to threadid/stream '''
# using deprecated v3 message create because of bug in codegen of v4 ( multipart/form-data )
response, status_code = self.__agentdepr__.Messages.post_v3_stream_sid_message_create(sessionToken=self.__session__,
keyManagerToken=self.__keymngr__,
sid=threadid,
message={"format": msgFormat,
"message": message}
).result()
return status_code, response但我认为这是相当丑陋的(美学)。这条线也太长了,从技术上讲,这违反了PEP8。
有没有人有任何关于如何以一种更美观的方式写出来的想法?
方法名是从swagger文件中编码生成的,所以我不想更改它。
发布于 2017-06-30 22:59:20
使用一些局部变量怎么样?一个好的经验法则是每行只有一个函数调用。
def send_message(self, threadid, msgFormat, message):
''' send message to threadid/stream '''
message_dict = {"format": msgFormat, "message": message}
kwargs = {'sessionToken': self.__session__,
'keyManagerToken': self.__keymngr__,
'sid': threadid,
'message': message_dict}
# using deprecated v3 message create because of bug in
# codegen of v4 ( multipart/form-data )
messsages = self.__agentdepr__.Messages
post = messages.post_v3_stream_sid_message_create(**kwargs)
response, status_code = post.result()
return status_code, responsehttps://stackoverflow.com/questions/44849075
复制相似问题