2011-09-20 15 views
16

पायथन में, repr और बैकक्वोट ` (1 के बाएं) के बीच कोई अंतर है?पायथन: repr बनाम बैकक्वोट

प्रदर्शन के लिए:

class A(object): 
    def __repr__(self): 
     return 'repr A' 
    def __str__(self): 
     return 'str A' 


>>> a = A() 

>>> repr(a) 
#'repr A' 

>>> `a` 
#'repr A' 

>>> str(a) 
#'str A' 

backquotes सिर्फ repr फोन करते हैं? क्या यह सुविधा के लिए बस है? क्या कोई महत्वपूर्ण गति अंतर है?

धन्यवाद!

+2

http://stackoverflow.com/questions/1673071/what-do-backticks-mean-to-the-python-interpreter-num का डुप्लिकेट? – AlG

+1

आप गति अंतर के बारे में चिंता क्यों करेंगे? –

+1

@NedBatchelder, ज्यादातर जिज्ञासा के लिए। – TorelTwiddler

उत्तर

23

वे repr के लिए उपनाम हैं। उनके पास एक ही प्रभाव है।

हालांकि, वे बहिष्कृत हैं और पाइथन 3 में हटा दिए गए हैं। उनका उपयोग न करें; repr का उपयोग करें।

9

कवर python.org के अनुसार रेपर:

यह वही मूल्य वाले रूपांतरण (रिवर्स उद्धरण) द्वारा उत्पन्न होने वाले है।

यह ध्यान देने योग्य है कि बैकटिक विधि इस समय भाषा डिजाइनरों द्वारा एक abomination के बारे में कुछ माना जाता है, और it was removed in python 3

संबंधित मुद्दे