2011-09-20 33 views
16

Trong trăn, có sự khác biệt giữa repr và backquote ` (bên trái của 1) không?Python: repr vs backquote

Đối với cuộc biểu tình:

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' 

Đừng các backquotes chỉ cần gọi repr? Nó chỉ đơn giản là để thuận tiện? Có chênh lệch tốc độ đáng kể nào không?

Cảm ơn!

+2

Bản sao của http://stackoverflow.com/questions/1673071/what-do-backticks-mean-to-the-python-interpreter-num? – AlG

+1

Tại sao bạn lo lắng về sự khác biệt về tốc độ? –

+1

@NedBatchelder, chủ yếu là vì sự tò mò. – TorelTwiddler

Trả lời

23

Chúng là bí danh cho repr. Chúng có cùng tác dụng chính xác.

Tuy nhiên, chúng không còn được dùng nữa và đã bị xóa trong Python 3. Không sử dụng chúng; sử dụng repr.

9

Theo python.org bao gồm repr:

Đây là giá trị tương tự thu được từ chuyển đổi (đảo ngược dấu ngoặc kép).

Cần lưu ý rằng phương pháp backtick được coi là một điều gì đó của một nhà thiết kế ngôn ngữ tại thời điểm này và it was removed in python 3.

Các vấn đề liên quan