Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

25

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang cố gắng duy trì/cập nhật/viết lại/sửa một chút python trông hơi giống sau:

variable = """My name is %s and it has been %s since I was born.
              My parents decided to call me %s because they thought %s was a nice name.
              %s is the same as %s.""" % (name, name, name, name, name, name)

Có rất ít đoạn trích trông giống như thế này trên toàn bộ kịch bản, và tôi đã tự hỏi liệu có cách đơn giản hơn (pythonic hơn?) Để viết mã này. Tôi đã tìm thấy một trường hợp này thay thế cùng một biến khoảng 30 lần và nó chỉ cảm thấy xấu xí.

Là cách duy nhất xung quanh sự xấu xí (theo ý kiến ​​của tôi) để chia nó thành rất nhiều bit nhỏ?

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)

Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

mdeous

16,9K7 Huy hiệu vàng55 Huy hiệu bạc60 Huy hiệu Đồng7 gold badges55 silver badges60 bronze badges

Hỏi ngày 8 tháng 8 năm 2011 lúc 13:36Aug 8, 2011 at 13:36

Sử dụng một từ điển thay thế.

var = '%(foo)s %(foo)s %(foo)s' % { 'foo': 'look_at_me_three_times' }

Hoặc

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
5 với số lượng rõ ràng.

var = '{0} {0} {0}'.format('look_at_meeee')

Vâng, hoặc

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
5 với các tham số được đặt tên.

var = '{foo} {foo} {foo}'.format(foo = 'python you so crazy')

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:39Aug 8, 2011 at 13:39

Cat Plus Plus Plus PlusCat Plus Plus

122K26 Huy hiệu vàng196 Huy hiệu bạc222 Huy hiệu đồng26 gold badges196 silver badges222 bronze badges

1

Sử dụng chuỗi định dạng:

>>> variable = """My name is {name} and it has been {name} since..."""
>>> n = "alex"
>>>
>>> variable.format(name=n)
'My name is alex and it has been alex since...'

Văn bản trong {} có thể là một mô tả hoặc giá trị chỉ mục.

Một mẹo lạ mắt khác là sử dụng từ điển để xác định nhiều biến kết hợp với toán tử **.

>>> values = {"name": "alex", "color": "red"}
>>> """My name is {name} and my favorite color is {color}""".format(**values)
'My name is alex and my favorite color is red'
>>>

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:47Aug 8, 2011 at 13:47

Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

Monkutmonkutmonkut

40.4K23 Huy hiệu vàng120 Huy hiệu bạc148 Huy hiệu đồng23 gold badges120 silver badges148 bronze badges

1

Python 3.6 đã giới thiệu một cách đơn giản hơn cho các chuỗi định dạng. Bạn có thể nhận được thông tin chi tiết về nó trong PEP 498

>>> name = "Sam"
>>> age = 30
>>> f"Hello, {name}. You are {age}."
'Hello, Sam. You are 30.'

Nó cũng hỗ trợ đánh giá thời gian chạy

>>>f"{2 * 30}"
'60'

Nó cũng hỗ trợ hoạt động từ điển

>>> comedian = {'name': 'Tom', 'age': 30}
>>> f"The comedian is {comedian['name']}, aged {comedian['age']}."
 The comedian is Tom, aged 30.

Đã trả lời ngày 22 tháng 6 năm 2019 lúc 5:22Jun 22, 2019 at 5:22

Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

Arghya Sahaarghya SahaArghya Saha

5.3314 Huy hiệu vàng24 Huy hiệu bạc43 Huy hiệu đồng4 gold badges24 silver badges43 bronze badges

Sử dụng

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
7 mới:

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
0

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:39Aug 8, 2011 at 13:39

Cat Plus Plus Plus PlusZaur Nasibov

122K26 Huy hiệu vàng196 Huy hiệu bạc222 Huy hiệu đồng11 gold badges51 silver badges81 bronze badges

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
1

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:39Aug 8, 2011 at 13:39

Cat Plus Plus Plus PlusMikhail Korobov

122K26 Huy hiệu vàng196 Huy hiệu bạc222 Huy hiệu đồng8 gold badges72 silver badges64 bronze badges

Sử dụng chuỗi định dạng:

Văn bản trong {} có thể là một mô tả hoặc giá trị chỉ mục.Aug 8, 2011 at 13:38

Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

J0HNJ0HNJ0HN

Một mẹo lạ mắt khác là sử dụng từ điển để xác định nhiều biến kết hợp với toán tử **.5 gold badges50 silver badges84 bronze badges

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
2

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:39Aug 8, 2011 at 13:39

Cat Plus Plus Plus Plusxubuntix

122K26 Huy hiệu vàng196 Huy hiệu bạc222 Huy hiệu đồng18 silver badges19 bronze badges

Văn bản trong {} có thể là một mô tả hoặc giá trị chỉ mục.Aug 8, 2011 at 13:38

Hướng dẫn replace variable in string python - thay thế biến trong chuỗi python

Một mẹo lạ mắt khác là sử dụng từ điển để xác định nhiều biến kết hợp với toán tử **.Gryphius

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 13:476 gold badges47 silver badges53 bronze badges

Monkutmonkut

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
3

40.4K23 Huy hiệu vàng120 Huy hiệu bạc148 Huy hiệu đồng

variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
4

Python 3.6 đã giới thiệu một cách đơn giản hơn cho các chuỗi định dạng. Bạn có thể nhận được thông tin chi tiết về nó trong PEP 498Feb 28, 2020 at 13:35

Làm thế nào để bạn thay thế một biến chuỗi trong Python?

Cú pháp thay thế ()..
Cú pháp: String.replace (cũ, mới, đếm).
Parameters:.
Giá trị trả về: Nó trả về một bản sao của chuỗi trong đó tất cả các lần xuất hiện của một chuỗi con được thay thế bằng một chuỗi con khác ..

Làm thế nào để bạn thay thế giá trị của một biến trong Python?

Phương thức Sub (), chúng ta có thể thay thế tất cả các trường hợp của một biến hoặc biểu thức trong một biểu thức toán học với một số biến hoặc biểu thức hoặc giá trị khác.Tham số: Biến - Đó là biến hoặc biểu thức sẽ được thay thế.Thay thế - Đó là biến hoặc biểu thức hoặc giá trị được thay thế., we can substitute all instances of a variable or expression in a mathematical expression with some other variable or expression or value. Parameters: variable – It is the variable or expression which will be substituted. substitute – It is the variable or expression or value which comes as substitute.

Thay thế () làm gì trong Python?

Phương thức python String thay thế () Phương thức thay thế () thay thế một cụm từ được chỉ định bằng một cụm từ được chỉ định khác.Lưu ý: Tất cả các lần xuất hiện của cụm từ được chỉ định sẽ được thay thế, nếu không có gì khác được chỉ định.replaces a specified phrase with another specified phrase. Note: All occurrences of the specified phrase will be replaced, if nothing else is specified.

Làm thế nào để bạn thay thế một ký tự trong một chuỗi trong Python?

Phương thức thay thế () giúp thay thế sự xuất hiện của ký tự cũ đã cho bằng ký tự hoặc chuỗi con mới.Phương thức chứa các tham số như cũ (một ký tự mà bạn muốn thay thế), mới (một ký tự mới bạn muốn thay thế) và đếm (một số lần bạn muốn thay thế ký tự). helps to replace the occurrence of the given old character with the new character or substring. The method contains the parameters like old(a character that you wish to replace), new(a new character you would like to replace with), and count(a number of times you want to replace the character).