Python có một bộ các phương thức tích hợp mà bạn có thể sử dụng trên các chuỗi.
Trường hợp cao hơn
Thí dụ
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
6 trả về chuỗi trong trường hợp trên: A = "Xin chào, Thế giới!" in [a.upper []]
print[a.upper[]]
Hãy tự mình thử »
Chữ thường
Thí dụ
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
6 trả về chuỗi trong trường hợp trên: A = "Xin chào, Thế giới!" in [a.upper []]
print[a.lower[]]
Hãy tự mình thử »
Chữ thường
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
7 Trả về chuỗi ở trường hợp thông thường:Thí dụ
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
6 trả về chuỗi trong trường hợp trên: A = "Xin chào, Thế giới!" in [a.upper []]
print[a.strip[]] # returns "Hello, World!"
Hãy tự mình thử »
Chữ thường
Thí dụ
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
6 trả về chuỗi trong trường hợp trên: A = "Xin chào, Thế giới!" in [a.upper []]
print[a.replace["H", "J"]]
Hãy tự mình thử »
Chữ thường
Phương thức
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
7 Trả về chuỗi ở trường hợp thông thường:Thí dụ
A = "Xin chào, Thế giới!" in [a.lower []]
Loại bỏ khoảng trắng
print[a.split[","]] # returns ['Hello', ' World!']
Hãy tự mình thử »
Chữ thường
Phương thức text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
7 Trả về chuỗi ở trường hợp thông thường:
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
A = "Xin chào, Thế giới!" in [a.lower []]
508
Sửa đổi trong Python là gì?
Learn more.
Sửa đổi danh sách có nghĩa là thay đổi một mục cụ thể, thêm một mục mới hoặc xóa một mục hiện có. T "," noindex ": 0," nofollow ": 0}," nội dung ":" bạn có thể sửa đổi nội dung của một danh sách khi cần thiết với Python.
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.
text = "abcdefg";
text[1] = "Z";
^
Cách dễ nhất trong Python để thay thế một ký tự trong một chuỗi là gì?
Ví dụ:25 gold badges160 silver badges285 bronze badges
MartineauAug 4, 2009 at 15:48
0
Huy hiệu vàng 116K25
Hỏi ngày 4 tháng 8 năm 2009 lúc 15:48
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
Chuỗi Python là bất biến [nghĩa là chúng không thể được sửa đổi]. Có rất nhiều lý do cho việc này. Sử dụng danh sách cho đến khi bạn không có lựa chọn, chỉ sau đó biến chúng thành chuỗi.
Đã trả lời ngày 4 tháng 8 năm 2009 lúc 16:41Aug 4, 2009 at 16:41
SCVALEXSCVALEXscvalex
14.6K2 Huy hiệu vàng33 Huy hiệu bạc43 Huy hiệu đồng2 gold badges33 silver badges43 bronze badges
11
Phương pháp nhanh nhất?
Có ba cách. Đối với những người tìm kiếm tốc độ, tôi khuyên bạn nên 'Phương pháp 2'
Phương pháp 1
Được đưa ra bởi câu trả lời này
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
Khá chậm so với 'Phương pháp 2'
timeit.timeit["text = 'abcdefg'; s = list[text]; s[6] = 'W'; ''.join[s]", number=1000000]
1.0411581993103027
Phương pháp 2 [Phương pháp nhanh]
Được đưa ra bởi câu trả lời này
text = 'abcdefg'
text = text[:1] + 'Z' + text[2:]
Khá chậm so với 'Phương pháp 2'
timeit.timeit["text = 'abcdefg'; text = text[:1] + 'Z' + text[2:]", number=1000000]
0.34651994705200195
Phương pháp 2 [Phương pháp nhanh]
Cái nào nhanh hơn nhiều:
timeit.timeit["text = 'abcdefg'; s = bytearray[text]; s[1] = 'Z'; str[s]", number=1000000]
1.0387420654296875
Phương pháp 3:Mar 3, 2014 at 14:15
Mảng byte:Mehdi Nellen
Đã trả lời ngày 3 tháng 3 năm 2014 lúc 14:154 gold badges32 silver badges48 bronze badges
13
Mehdi Nellenmehdi Nellen
7.9064 Huy hiệu vàng32 Huy hiệu bạc48 Huy hiệu đồngAug 4, 2009 at 15:53
new = text[:1] + 'Z' + text[2:]
Jochen RitzelĐã trả lời ngày 4 tháng 8 năm 2009 lúc 15:5330 gold badges196 silver badges191 bronze badges
2
Jochen Ritzeljochen Ritzel
The easiest way to do what you want is probably:
text = "Z" + text[1:]
102K30 Huy hiệu vàng196 Huy hiệu bạc191 Huy hiệu Đồng
Chuỗi Python là bất biến, bạn thay đổi chúng bằng cách tạo một bản sao. Cách dễ nhất để làm những gì bạn muốn có lẽ là:
text = text[:1] + "Z" + text[2:]
timeit.timeit["text = 'abcdefg'; s = list[text]; s[6] = 'W'; ''.join[s]", number=1000000]
1.0411581993103027
2 trả về chuỗi trong timeit.timeit["text = 'abcdefg'; s = list[text]; s[6] = 'W'; ''.join[s]", number=1000000]
1.0411581993103027
3 từ vị trí 1 đến cuối, các vị trí được tính từ 0 SO '1' là ký tự thứ hai.
Chỉnh sửa: Bạn có thể sử dụng cùng một kỹ thuật cắt chuỗi cho bất kỳ phần nào của chuỗi
Hoặc nếu chữ chỉ xuất hiện khi bạn có thể sử dụng kỹ thuật tìm kiếm và thay thế được đề xuất bên dưới6 silver badges19 bronze badges
GuntbertAug 4, 2009 at 15:52
5186 Huy hiệu bạc19 Huy hiệu đồngMartin Beckett
Đã trả lời ngày 4 tháng 8 năm 2009 lúc 15:5228 gold badges184 silver badges259 bronze badges
1
Martin Beckettmartin Beckett
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
093.5K28 Huy hiệu vàng184 Huy hiệu bạc259 Huy hiệu đồng
Bắt đầu với Python 2.6 và Python 3 bạn có thể sử dụng bytearrays có thể thay đổi [có thể thay đổi phần tử khôn ngoan không giống như chuỗi]:
Chỉnh sửa: Thay đổi STR thành SJan 30, 2014 at 14:34
EDIT2: Như nhà giả kim hai bit đã đề cập trong các bình luận, mã này không hoạt động với Unicode.Mahmoud
Đã trả lời ngày 30 tháng 1 năm 2014 lúc 14:344 silver badges6 bronze badges
4
Mahmoudmahmoud
5294 Huy hiệu bạc6 Huy hiệu Đồng
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
1
Mã này không phải là của tôi. Tôi không thể nhớ lại mẫu trang web ở đâu, tôi đã lấy nó. Thật thú vị, bạn có thể sử dụng điều này để thay thế một ký tự hoặc nhiều hơn bằng một hoặc nhiều từ thiện. Mặc dù câu trả lời này rất muộn, nhưng những người mới như tôi [bất cứ lúc nào] có thể thấy nó hữu ích.Dec 16, 2011 at 13:39
K.Vee.Shanker.K.Vee.Shanker.K.Vee.Shanker.
Thay đổi chức năng văn bản.1 gold badge3 silver badges5 bronze badges
7
Đã trả lời ngày 16 tháng 12 năm 2011 lúc 13:39
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
22891 Huy hiệu vàng3 Huy hiệu bạc 5 huy hiệu đồng
// result: Kong
Chuỗi là bất biến trong Python, điều đó có nghĩa là bạn không thể thay đổi chuỗi hiện có. Nhưng nếu bạn muốn thay đổi bất kỳ ký tự nào trong đó, bạn có thể tạo một chuỗi mới như sau,
thay thế ['vua', 1, 'o'] // kết quả: kong
// result: Dogs
Lưu ý: Nếu bạn cung cấp giá trị vị trí lớn hơn chiều dài của chuỗi, nó sẽ nối các ký tự ở cuối.Aug 1, 2020 at 7:39
thay thế ['chó', 10, 's'] // kết quả: chó
Đã trả lời ngày 1 tháng 8 năm 2020 lúc 7:39
Giống như những người khác đã nói, nói chung các chuỗi Python được cho là bất biến.
Tuy nhiên, nếu bạn đang sử dụng CPython, việc triển khai tại python.org, có thể sử dụng CTYPE để sửa đổi cấu trúc chuỗi trong bộ nhớ.
Dưới đây là một ví dụ mà tôi sử dụng kỹ thuật để xóa một chuỗi.
Đánh dấu dữ liệu là nhạy cảm trong PythonAug 4, 2009 at 19:08
Tôi đề cập đến điều này vì lợi ích của sự hoàn chỉnh, và đây phải là biện pháp cuối cùng của bạn vì nó là hackish.Unknown
Đã trả lời ngày 4 tháng 8 năm 2009 lúc 19:0826 gold badges137 silver badges181 bronze badges
3
Không biết không biết
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
345.2K26 Huy hiệu vàng137 Huy hiệu bạc181 Huy hiệu Đồng
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
4Tôi thích F-String:May 2, 2021 at 23:09
1
Trong máy của tôi, phương pháp này nhanh hơn 10% so với "phương pháp nhanh" sử dụng chuỗi + để nối:
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
5Đã trả lời ngày 2 tháng 5 năm 2021 lúc 23:09
Trên thực tế, với chuỗi, bạn có thể làm một cái gì đó như thế này:Nov 20, 2015 at 21:12
1
Về cơ bản, tôi đang "thêm"+"chuỗi" với nhau thành một chuỗi mới :].character in a string
Đã trả lời ngày 20 tháng 11 năm 2015 lúc 21:12
Phương pháp 1
Được đưa ra bởi câu trả lời này
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
6Khá chậm so với 'Phương pháp 2'
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
3Phương pháp 2 [Phương pháp nhanh]
Được đưa ra bởi câu trả lời này
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
8Here,
>>> s = list["Hello zorld"]
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd']
>>> s[6] = 'W'
>>> s
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']
>>> "".join[s]
'Hello World'
9Khá chậm so với 'Phương pháp 2'Jan 29 at 18:14
Phương pháp 2 [Phương pháp nhanh]
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
0Cái nào nhanh hơn nhiều:
Phương pháp 3:Sep 17, 2019 at 17:44
Mảng byte:Paul Nathan
Đã trả lời ngày 3 tháng 3 năm 2014 lúc 14:1528 gold badges112 silver badges207 bronze badges
Mehdi Nellenmehdi Nellen
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
17.9064 Huy hiệu vàng32 Huy hiệu bạc48 Huy hiệu đồng
new = text[:1] + 'Z' + text[2:]
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
2Đã trả lời ngày 4 tháng 8 năm 2009 lúc 15:53
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
3Jochen Ritzeljochen RitzelApr 4, 2020 at 16:50
102K30 Huy hiệu vàng196 Huy hiệu bạc191 Huy hiệu Đồngmohammed wazeem
Chuỗi Python là bất biến, bạn thay đổi chúng bằng cách tạo một bản sao. Cách dễ nhất để làm những gì bạn muốn có lẽ là:1 gold badge8 silver badges25 bronze badges
1
timeit.timeit["text = 'abcdefg'; s = list[text]; s[6] = 'W'; ''.join[s]", number=1000000]
1.0411581993103027
2 trả về chuỗi trong timeit.timeit["text = 'abcdefg'; s = list[text]; s[6] = 'W'; ''.join[s]", number=1000000]
1.0411581993103027
3 từ vị trí 1 đến cuối, các vị trí được tính từ 0 SO '1' là ký tự thứ hai.text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
4Chỉnh sửa: Bạn có thể sử dụng cùng một kỹ thuật cắt chuỗi cho bất kỳ phần nào của chuỗiDec 6, 2020 at 21:30
Hoặc nếu chữ chỉ xuất hiện khi bạn có thể sử dụng kỹ thuật tìm kiếm và thay thế được đề xuất bên dướieapetcho
Guntbert3 silver badges10 bronze badges
5186 Huy hiệu bạc19 Huy hiệu đồng
text = 'abcdefg'
new = list[text]
new[6] = 'W'
''.join[new]
5Đã trả lời ngày 4 tháng 8 năm 2009 lúc 15:52Mar 21, 2021 at 12:09
Làm thế nào để bạn sửa đổi một chuỗi?
Chúng ta có thể sửa đổi giá trị chuỗi trong Python không?
Chúng ta có thể sửa đổi một chuỗi không?
Sửa đổi trong Python là gì?
You can modify the content of a list as needed with Python.