I Python: вывод результатов строки - PullRequest
2 голосов
/ 14 апреля 2020

Я хочу, чтобы я Python автоматически печатал все str результаты.

In [13]: 'hi\nhi' # I don't want this output
Out[13]: 'hi\nhi'

In [14]: print(_) # I want it like this, but without using print on every result.
hi
hi

1 Ответ

3 голосов
/ 14 апреля 2020

Это действительно грязный хак, но вы можете обезьянить патч IPython.lib.pretty.RepresentationPrinter:

In [9]: import IPython.lib.pretty                                                                                                                                                                     

In [10]: class NewPrettier(IPython.lib.pretty.RepresentationPrinter): 
    ...:     def pretty(self, obj): 
    ...:         if isinstance(obj, (str,)): 
    ...:             self.text(obj) 
    ...:         else: 
    ...:             super().pretty(obj) 
    ...:                                                                                                                                                                                              

In [11]: IPython.lib.pretty.RepresentationPrinter = NewPrettier                                                                                                                                       

In [12]: "a"                                                                                                                                                                                          
Out[12]: a

РЕДАКТИРОВАТЬ: удалить Out [n]:

In [24]: import IPython.core.displayhook                                                                                                                                                              

In [25]: IPython.core.displayhook.DisplayHook.write_output_prompt = lambda :None                                                                                                                      

In [26]: "X"                                                                                                                                                                                          
X
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...