Hướng dẫn how do you modify a string in python? - làm thế nào để bạn sửa đổi một chuỗi trong python?

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:

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'
0

93.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'
2

2891 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'
3

45.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'
4

Tô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'
6

Khá 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'
3

Phươ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'
8

Here,

>>> 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'
9

Khá 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]
0

Cá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]
1

7.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]
3

Jochen 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]
4

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ỗ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?

Do đó, để sửa đổi chúng, chúng tôi sử dụng các phương thức sau ;..
Subring []: Sử dụng phương thức này, bạn có thể trích xuất một phần của đối tượng chuỗi/chuỗi được khai báo ban đầu.....
Concat []: Sử dụng chức năng này, bạn có thể kết hợp hai chuỗi.....
Thay thế []: Phương thức này được sử dụng để sửa đổi chuỗi gốc bằng cách thay thế một số ký tự từ nó ..

Chúng ta có thể sửa đổi giá trị chuỗi trong Python không?

Chuỗi Python là bất biến [nghĩa là chúng không thể được sửa đổi].they can't be modified].

Chúng ta có thể sửa đổi một chuỗi không?

Bởi vì các đối tượng chuỗi là bất biến, bất cứ khi nào bạn muốn sửa đổi một chuỗi, bạn phải sao chép nó vào StringBuffer hoặc StringBuilder hoặc sử dụng phương thức chuỗi xây dựng bản sao mới của chuỗi với sửa đổi của bạn hoàn tất.

Sửa đổi trong Python là gì?

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.to change a particular entry, add a new entry, or remove an existing entry. T","noIndex":0,"noFollow":0},"content":"

You can modify the content of a list as needed with Python.

Bài Viết Liên Quan

Chủ Đề