Đưa ra một chuỗi str và một mảng các chỉ số ký tự [] mô tả các chỉ số trong chuỗi gốc nơi các ký tự sẽ được thêm vào. Đối với bài viết này, hãy để ký tự được chèn vào dấu sao [*]. Mỗi ngôi sao phải được chèn trước ký tự tại chỉ mục đã cho. Trả lại chuỗi đã sửa đổi sau khi thêm các ngôi sao
ví dụ
Đầu vào. str = “geeksforgeeks”, chars = [1, 5, 7, 9]
Đầu ra. g*eeks*fo*rg*eeks
Giải thích. Các chỉ số 1, 5, 7 và 9 tương ứng với các ký tự in đậm trong “geeksforgeeks”.Đầu vào. str = “khoảng cách”, chars = [0, 1, 2, 3, 4, 5, 6]
Đầu ra. “*s*p*a*c*i*n*g”
Đề nghị thực hành
Vui lòng thử cách tiếp cận của bạn trên IDE trước, trước khi
chuyển sang giải pháp.
Thử nó
Tiếp cận. Để giải quyết vấn đề, hãy làm theo ý tưởng dưới đây
Lặp lại chuỗi và theo dõi số lượng ký tự trong chuỗi cho đến nay và bất cứ khi nào số lượng của bạn bằng với phần tử trong mảng sao, hãy thêm một ngôi sao vào chuỗi kết quả và tiếp tục trong mảng sao của bạn
Hướng dẫn này sẽ giải thích nhiều phương pháp để chèn một chuỗi vào một chuỗi hiện có. Chúng ta nên biết rằng trong Python các chuỗi là bất biến, điều đó có nghĩa là một chuỗi không thể thay đổi hoặc sửa đổi trong Python
Những gì chúng ta có thể làm liên quan đến việc chèn chuỗi là tạo một chuỗi mới với các thay đổi mong muốn, chẳng hạn như tách chuỗi ban đầu và chèn một chuỗi mới vào đó
Chèn chuỗi vào chuỗi trong Python bằng phương thức
2Hello, what are you doing?
Đầu tiên chúng ta sử dụng phương thức
2 để lấy chỉ mục chuỗi con trong chuỗi, sau đó chúng ta cần chèn một chuỗi khác. Sau khi lấy được chỉ số chuỗi con, ta tách chuỗi ban đầu rồi nối chuỗi đã tách và chuỗi cần chèn bằng toán tửHello, what are you doing?
4 để được chuỗi mong muốnHello, what are you doing?
mã ví dụ
my_string = 'Hello, what are doing?' index = my_string.find['doing'] final_string = my_string[:index] + 'you ' + my_string[index:] print[final_string]
đầu ra
Hello, what are you doing?
Chèn chuỗi vào chuỗi trong Python bằng phương thức
5Hello, what are you doing?
Chúng ta có thể chèn chuỗi này vào một chuỗi khác sau khi tách chuỗi ban đầu thành một danh sách bằng cách sử dụng hàm
6. Sau khi chuỗi được chuyển đổi thành danh sách, chúng ta có thể chèn chuỗi vào chỉ mục mong muốn của danh sách, sử dụng hàmHello, what are you doing?
5Hello, what are you doing?
Sau khi tách và thêm chuỗi mong muốn, chúng ta có thể chuyển đổi lại danh sách thành chuỗi bằng cách sử dụng hàm
0 và nhận chuỗi cần thiết \[\newcommand{L}[1]{\. #1 \. }\newcommand{VL}[1]{\L{ \vec{#1} }}\newcommand{R}[1]{\operatorname{Re}\,[#1]}\newcommand{I}[1]Hello, what are you doing?
Chèn giá trị vào chuỗi¶
Tùy chọn 1 - phương thức chuỗi
8¶Hello, what are you doing?
Bạn có thể sử dụng phương pháp chuỗi phương pháp
8 để tạo chuỗi mới với các giá trị được chèn vào. Phương pháp này hoạt động cho tất cả các bản phát hành hiện tại của Python. Ở đây chúng tôi chèn một chuỗi vào một chuỗi khácHello, what are you doing?
>>> shepherd = "Mary" >>> string_in_string = "Shepherd {} is on duty.".format[shepherd] >>> print[string_in_string] Shepherd Mary is on duty.Các dấu ngoặc nhọn cho biết giá trị được chèn sẽ đi đến đâu
Bạn có thể chèn nhiều hơn một giá trị. Các giá trị không nhất thiết phải là chuỗi, chúng có thể là số và các đối tượng Python khác
>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.>>> 'Here is a {} floating point number'.format[3.33333] 'Here is a 3.33333 floating point number'Bạn có thể thực hiện định dạng số và chuỗi phức tạp hơn bằng cách sử dụng các tùy chọn định dạng trong dấu ngoặc nhọn — xem tài liệu về định dạng chuỗi trong dấu ngoặc nhọn
Hệ thống này cho phép chúng tôi đưa ra các hướng dẫn định dạng cho những thứ như số, bằng cách sử dụng
>>> shepherd = "Mary" >>> string_in_string = "Shepherd {} is on duty.".format[shepherd] >>> print[string_in_string] Shepherd Mary is on duty.0 bên trong dấu ngoặc nhọn, theo sau là hướng dẫn định dạng. Ở đây, chúng tôi yêu cầu in số nguyên [>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.0] trong đó số này phải được thêm vào trước bằng _____41 để lấp đầy chiều rộng trường của ____42>>> print["Number {:03d} is here.".format[11]] Number 011 is here.Điều này in một giá trị dấu phẩy động [
>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.3] với chính xác _______44 chữ số sau dấu thập phân2Hello, what are you doing?
Xem tài liệu định dạng chuỗi Python để biết thêm chi tiết và ví dụ
Tùy chọn 2 - f-strings trong Python >= 3. 6¶
Nếu bạn có thể phụ thuộc vào việc có Python >= phiên bản 3. 6, thì bạn có một tùy chọn hấp dẫn khác, đó là sử dụng cú pháp chuỗi ký tự [f-string] được định dạng mới để chèn các giá trị biến. Một
>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.3 ở đầu chuỗi yêu cầu Python cho phép mọi tên biến hợp lệ hiện tại làm tên biến trong chuỗi. Ví dụ, đây là một ví dụ giống như ở trên, sử dụng cú pháp f-string4Hello, what are you doing?
Tùy chọn 3 - định dạng % trường học cũ¶
Có một phương pháp định dạng chuỗi cũ hơn sử dụng toán tử
>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.6. Nó kém linh hoạt hơn một chút so với hai tùy chọn còn lại, nhưng bạn vẫn sẽ thấy nó được sử dụng trong mã cũ hơn và khi sử dụng định dạng>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.6 sẽ ngắn gọn hơnĐối với định dạng toán tử ________ 46, bạn cho biết vị trí của các giá trị được chèn bằng cách sử dụng ký tự ________ 46 theo sau là một bộ xác định định dạng, để cho biết giá trị sẽ được chèn như thế nào
Đây là ví dụ trên, sử dụng định dạng
>>> shepherd = "Mary" >>> age = 32 >>> stuff_in_string = "Shepherd {} is {} years old.".format[shepherd, age] >>> print[stuff_in_string] Shepherd Mary is 32 years old.6. Lưu ý dấu>>> 'Here is a {} floating point number'.format[3.33333] 'Here is a 3.33333 floating point number'1 để chèn chuỗi và dấu>>> 'Here is a {} floating point number'.format[3.33333] 'Here is a 3.33333 floating point number'2 để chèn số nguyên