![](/img/trans.png)
[英]How can I replace two different sub strings in a string by using re.sub() in python?
[英]How can re.sub() mutate immutable Python strings?
这里,字符串flight_details
字符串被更改但其 id 没有更改,以下是代码及其输出:
import re
flight_details = "Flight Savana Airlines a2134"
print(id(flight_details))
print(re.sub(r"Flight", r"Plane", flight_details))
print(id(flight_details))
print(re.sub(r"Plane", r"Akash", flight_details))
print(id(flight_details))
输出:
27264016
Plane Savana Airlines a2134
27264016
Flight Savana Airlines a2134
27264016
id(flight_details)
在调用re.sub
后返回相同的值,因为re.sub
不会更改您传递给它的字符串的值 ( flight_details
)。 它返回一个新字符串。
例如:
import re
flight_details = "Flight Savana Airlines a2134"
print(flight_details)
print(id(flight_details))
re.sub(r"Flight", r"Plane", flight_details)
print(flight_details)
print(id(flight_details))
flight_details = re.sub(r"Flight", r"Plane", flight_details)
print(flight_details)
print(id(flight_details))
输出:
Flight Savana Airlines a2134
1442959741216
Flight Savana Airlines a2134
1442959741216
Plane Savana Airlines a2134
1442959741456
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.