Hướng dẫn change string in array python - thay đổi chuỗi trong python mảng

Tôi muốn tạo một hàm thêm một từ cụ thể trước mỗi chuỗi trong mảng. Cuối cùng tôi muốn mảng đã thay đổi. Tôi có mã này:

def make_great[magicians]:
    """Change magicians"""
    for magician in magicians:
        magician = "the Great" + magician


magicians = ["hudini", "angel", "teller", "anderson", "copperfield"]
make_great[magicians]
print[magicians]

Mã này không thay đổi mảng. Làm thế nào tôi có thể làm cho chức năng của tôi hoạt động?

hỏi ngày 28 tháng 6 năm 2016 lúc 19:11Jun 28, 2016 at 19:11

Martin Dimitrovmartin DimitrovMartin Dimitrov

3491 Huy hiệu vàng2 Huy hiệu bạc11 Huy hiệu đồng1 gold badge2 silver badges11 bronze badges

0

Bạn có thể sử dụng

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
3 để lặp qua danh sách với cả chỉ mục và giá trị, sau đó sử dụng chỉ mục để thay đổi giá trị trực tiếp vào danh sách:

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 19:14Jun 28, 2016 at 19:14

0

Khi bạn sử dụng vòng lặp For-Arech:

def make_great[magicians]:    
    for magician in magicians:
        magician = "The Great" + magician

Bạn đang thực sự tạo ra một pháp sư chuỗi mới; Vì vậy, sửa đổi nó sẽ không sửa đổi mảng ban đầu như bạn đã tìm thấy.

Thay vào đó, lặp lại các mục trong mảng:

def make_great[magicians]:    
    for i in range[len[magicians]]:
        magicians[i] = "The Great" + magicians[i]

Hoặc sử dụng một bảng điều khiển như đề xuất ở trên. Xem: Làm thế nào để sửa đổi các mục nhập danh sách trong For Loop?

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 19:18Jun 28, 2016 at 19:18

CheckMatecheckmateCheckmate

9937 Huy hiệu bạc16 Huy hiệu Đồng7 silver badges16 bronze badges

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
3 sẽ là điều tốt nhất để làm trong trường hợp này, sau đó sửa đổi giá trị tại mỗi chỉ mục trong mảng.

for i, magician in enumerate[magicians]:
    magicians[i] = "the Great " + magician

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 19:15Jun 28, 2016 at 19:15

RyanryanRyan

14.1k8 Huy hiệu vàng60 Huy hiệu bạc102 Huy hiệu Đồng8 gold badges60 silver badges102 bronze badges

1

Bạn có thể làm điều này với một chút python

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
5 kết hợp
def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
6 và
def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
7 cùng nhau

>>> magicians = ['hudini', 'angel', 'teller', 'anderson', 'copperfield']
>>> map[lambda el:'pre_'+el,magicians]
['pre_hudini', 'pre_angel', 'pre_teller', 'pre_anderson', 'pre_copperfield']

Hãy thử nó ở đây

Đã trả lời ngày 28 tháng 6 năm 2016 lúc 19:23Jun 28, 2016 at 19:23

Loretoparisiloretoparisiloretoparisi

15K11 Huy hiệu vàng96 Huy hiệu bạc133 Huy hiệu Đồng11 gold badges96 silver badges133 bronze badges

Sử dụng Split [] với tham số MaxSplit ..

Làm cách nào để thay đổi giá trị của một mảng chuỗi?

Sử dụng StringBuffer Tạo một đối tượng bộ đệm chuỗi trống. Đi qua các phần tử của mảng chuỗi bằng Vòng lặp. Trong vòng lặp, nối từng phần tử của mảng vào đối tượng StringBuffer bằng phương thức append []. Cuối cùng chuyển đổi đối tượng StringBuffer thành chuỗi bằng phương thức toString []..split[] method. The String .split[] method splits the String from the delimiter and returns the splitter elements as individual list items. Python String split[] method splits the string into a list. You can specify the separator; the default separator is any whitespace.

Cú pháp

string.split[separator, maxsplit]

Thông số

Cả hai tham số là tùy chọn.

Nó lấy một dấu phân cách làm tham số tùy chọn được sử dụng để phân chia chuỗi. Theo mặc định, khoảng trắng là một dấu phân cách.

Tham số MAXSplit chỉ định số lượng việc chia tách. Giá trị mặc định là -1, đó là tất cả các lần xuất hiện.maxsplit parameter specifies how many splits to do. The default value is -1, which is “all occurrences“.

Thí dụ

# app.py

str = "Millie Bobby Brown is Enola Holmes"
arr = str.split[]
print[arr]

Đầu ra

['Millie', 'Bobby', 'Brown', 'is', 'Enola', 'Holmes']

Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.

Để phân chia chuỗi ở một ký tự cụ thể, hãy sử dụng hàm Python Split [].

# app.py

str = "Millie,Bobby,Brown,is,Enola,Holmes"
arr = str.split[',']
print[arr]

Đầu ra

['Millie', 'Bobby', 'Brown', 'is', 'Enola', 'Holmes']

Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.‘,’ separator.

Để phân chia chuỗi ở một ký tự cụ thể, hãy sử dụng hàm Python Split [].

Trong ví dụ này, chúng tôi phân chia chuỗi ở dấu phân cách ‘,.

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
1

Đầu ra

def make_great[magicians]:
    for index, magician in enumerate[magicians]:
        magicians[index] = "the Great " + magician
2

Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.

Làm cách nào để thay đổi nội dung của một mảng trong Python?

Trong Python, cũng có thể thay đổi nhiều yếu tố trong một mảng cùng một lúc.Để làm điều này, bạn sẽ cần sử dụng toán tử lát cắt và gán các giá trị thái lát một mảng mới để thay thế chúng.make use of the slice operator and assign the sliced values a new array to replace them.

Làm thế nào để bạn chuyển đổi một chuỗi thành một mảng trong Python?

Chuỗi Python sang mảng - Cách chuyển đổi văn bản thành danh sách..
Phân chia [] Phương thức Suntax Phân tích ..
Sử dụng split [] với một dấu tách ..
Sử dụng Split [] với tham số MaxSplit ..

Làm cách nào để thay đổi giá trị của một mảng chuỗi?

Sử dụng StringBuffer Tạo một đối tượng bộ đệm chuỗi trống.Đi qua các phần tử của mảng chuỗi bằng Vòng lặp.Trong vòng lặp, nối từng phần tử của mảng vào đối tượng StringBuffer bằng phương thức append [].Cuối cùng chuyển đổi đối tượng StringBuffer thành chuỗi bằng phương thức toString [].

Bạn có thể thay đổi một chuỗi hiện có 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].

Bài Viết Liên Quan

Chủ Đề