Nếu bạn có một danh sách các chuỗi và bạn muốn kết hợp chúng để tạo một chuỗi duy nhất được tạo thành từ các yếu tố này, bạn có thể sử dụng vòng lặp For.For loop.
list_of_strings = ['one', 'two', 'three']
my_string = ''
for word in list_of_strings:
my_string += str[word]
print["Final result:", my_string]
Với mỗi lần vượt qua của vòng lặp, từ tiếp theo được thêm vào cuối chuỗi. Kết quả là một từ duy nhất.
Final result: onetwothree
Vấn đề với phương pháp này là không có dấu phân cách giữa các ký tự. Chúng ta có thể dễ dàng khắc phục điều đó bên trong vòng lặp. Chúng tôi sẽ tách các từ với dấu phẩy.
list_of_strings = ['one', 'two', 'three']
my_string = ''
for word in list_of_strings:
my_string += str[word + ","]
my_string = my_string[:-1]
my_string += '.'
print["Final result:", my_string]
Bây giờ, với mỗi lần vượt qua, có một từ và dấu phẩy được thêm vào cuối chuỗi.
Trước khi in kết quả, chúng tôi phải loại bỏ dấu phẩy ở cuối chuỗi, điều đó đã được thêm vào lần qua.
my_string = my_string[:-1]
Mã này gán biến My_String mà không có ký tự cuối cùng [là dấu phẩy] cho chính nó.my_string variable without the last character [which is a comma] to itself.
Ở cuối chuỗi, chúng ta sẽ thêm một dấu chấm.
my_string += '.'
Nếu bạn chạy mã này, bạn sẽ nhận được kết quả này.
Final result: one,two,three.
Vòng lặp trong khi
Nếu bạn thích sử dụng vòng lặp trong khi, bạn cần tạo một biến đếm và biết có bao nhiêu từ trong danh sách.While loop, you need to create a counting variable and know how many words are there inside the list.
list_of_strings = ['one', 'two', 'three']
my_string = ''
counter = 0
while counter < list_of_strings.__len__[]:
my_string += str[list_of_strings[counter] + ","]
counter += 1
my_string = my_string[:-1]
my_string += '.'
print["Final result:", my_string]
Vòng lặp này tiếp tục đáp ứng yêu cầu khi biến bộ đếm thấp hơn số lượng từ trong danh sách. Mỗi lần biến bộ đếm được tăng lên.counter variable is lower than the number of words inside the list. Each time the counter variable is incremented.
counter += 1
Mã này trả về kết quả tương tự như trước:
Final result: one,two,three.
Đối tượng chuỗi Python là bất biến. Vì vậy, mỗi khi chúng tôi sử dụng toán tử + để kết hợp hai chuỗi, một chuỗi mới được tạo. Nếu chúng ta phải nối nhiều chuỗi, sử dụng toán tử + sẽ tạo ra nhiều chuỗi tạm thời trước khi chúng ta có kết quả cuối cùng.
Chuỗi python nối
Chúng ta hãy nhìn vào một chức năng để kết hợp một chuỗi ’n lần.
def str_append[s, n]:
output = ''
i = 0
while i < n:
output += s
i = i + 1
return output
Lưu ý rằng tôi đang xác định chức năng này để giới thiệu việc sử dụng toán tử +. Sau này tôi sẽ sử dụng mô -đun thời gian để kiểm tra hiệu suất. Nếu bạn chỉ đơn giản muốn kết hợp một chuỗi ’n lần, bạn có thể làm điều đó dễ dàng bằng cách sử dụng
Final result: onetwothree4.
Một cách khác để thực hiện hoạt động chuỗi nối là bằng cách tạo một danh sách và nối các chuỗi vào danh sách. Sau đó, sử dụng hàm nối chuỗi [] để hợp nhất chúng lại với nhau để lấy chuỗi kết quả.
Final result: onetwothree0
Hãy để thử nghiệm các phương pháp này để đảm bảo rằng chúng đang hoạt động như mong đợi.
Final result: onetwothree1
Output:
Final result: onetwothree2
Cách tốt nhất để nối các chuỗi trong Python
Tôi có cả hai phương thức được xác định trong tệp
Final result: onetwothree5. Hãy để sử dụng mô -đun thời gian để kiểm tra hiệu suất của họ.
Final result: onetwothree3
Bản tóm tắt
Nếu có một vài chuỗi, thì bạn có thể sử dụng bất kỳ phương pháp nào để nối chúng. Từ góc độ dễ đọc, sử dụng toán tử + có vẻ tốt hơn đối với một vài chuỗi. Tuy nhiên, nếu bạn phải nối nhiều chuỗi, thì bạn nên sử dụng hàm danh sách và tham gia [].
Bạn có thể kiểm tra toàn bộ tập lệnh Python và nhiều ví dụ về Python từ Kho lưu trữ GitHub của chúng tôi.