Python thay thế nhiều dấu gạch dưới bằng một

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên

Trình chỉnh sửa mã Python

Có một cách khác để giải quyết giải pháp này?

Trước. Viết chương trình Python để tìm sự xuất hiện và vị trí của các chuỗi con trong một chuỗi.
Tiếp theo. Viết chương trình Python để trích xuất năm, tháng và ngày từ một url.

Mức độ khó của bài tập này là gì?

Dễ dàng trung bình khó

Kiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource



Chia sẻ Hướng dẫn / Bài tập này trên. FacebookTwitter

con trăn. Lời khuyên trong ngày

Đảo ngược dữ liệu [Hàm đảo ngược & Phương pháp đảo ngược]

Hàm đảo ngược và phương thức đảo ngược chỉ có thể được sử dụng để đảo ngược các đối tượng trong Python. Nhưng có một sự khác biệt lớn giữa hai

Trong bài viết này, chúng ta sẽ thảo luận về các cách khác nhau để thay thế nhiều ký tự trong một chuỗi bằng Python

Mục lục

  • Thay thế nhiều ký tự trong một chuỗi bằng phương thức thay thế[]
  • Thay thế nhiều ký tự trong một chuỗi bằng cách sử dụng translate[]
  • Thay thế nhiều ký tự trong một chuỗi bằng regex
  • Thay thế nhiều ký tự trong một chuỗi bằng vòng lặp for

Giả sử chúng ta có một chuỗi,

sample_string = "This is a sample string"

Bây giờ chúng tôi muốn các ký tự sau được thay thế trong chuỗi đó,

  • Thay thế tất cả các lần xuất hiện của 's' bằng 'X'
  • Thay thế tất cả các lần xuất hiện của 'a' bằng 'Y'
  • Thay thế tất cả các lần xuất hiện của 'i' bằng 'Z'
  • con trăn. Thay thế nhiều ký tự trong một chuỗi bằng vòng lặp for

Có nhiều cách khác nhau để làm điều này. Hãy thảo luận từng cái một,

quảng cáo

con trăn. Thay thế nhiều ký tự trong một chuỗi bằng phương thức thay thế[]

Trong Python, lớp String [Str] cung cấp một phương thức replace[old, new] để thay thế các chuỗi con trong một chuỗi. Nó thay thế tất cả các lần xuất hiện của chuỗi con cũ bằng chuỗi con mới

Trong Python không có khái niệm về kiểu dữ liệu ký tự. Một ký tự trong Python cũng là một chuỗi. Vì vậy, chúng ta có thể sử dụng phương thức replace[] để thay thế nhiều ký tự trong một chuỗi

sample_string = "This is a sample string"

char_to_replace = {'s': 'X',
                   'a': 'Y',
                   'i': 'Z'}

# Iterate over all key-value pairs in dictionary
for key, value in char_to_replace.items[]:
    # Replace key character with value character in string
    sample_string = sample_string.replace[key, value]

print[sample_string]

đầu ra

ThZX ZX Y XYmple XtrZng

Nó thay thế tất cả các lần xuất hiện của,

  • Ký tự 's' với 'X'
  • Ký tự 'a' với 'Y'
  • Ký tự 'i' với 'Z'

Vì các chuỗi là bất biến trong Python và chúng tôi không thể thay đổi nội dung của nó. Do đó, hàm replace[] trả về một bản sao của chuỗi có nội dung được thay thế

con trăn. Thay thế nhiều ký tự trong một chuỗi bằng cách sử dụng translate[]

Chúng ta cũng có thể thay thế nhiều ký tự trong chuỗi bằng các ký tự khác bằng hàm translate[],

sample_string = "This is a sample string"

char_to_replace = {'s': 'X',
                   'a': 'Y',
                   'i': 'Z'}

# Replace all multiple characters in a string
# based on translation table created by dictionary
sample_string = sample_string.translate[str.maketrans[char_to_replace]]

print[sample_string]

đầu ra

ThZX ZX Y XYmple XtrZng

Chúng tôi đã tạo bảng dịch đó từ một từ điển bằng Str. hàm maketrans[]. Sau đó, chúng tôi đã chuyển bảng dịch đó làm đối số cho phương thức translate[] của Str, phương thức này thay thế các ký tự sau trong chuỗi dựa trên bảng dịch đó,

  • Ký tự 's' được thay thế bằng 'X'
  • Ký tự 'a' được thay thế bằng 'Y'
  • Ký tự 'i' được thay thế bằng 'Z'

Vì các chuỗi là bất biến trong Python và chúng tôi không thể thay đổi nội dung của nó. Do đó, hàm translate[] trả về một bản sao của chuỗi có nội dung được thay thế

con trăn. Thay thế nhiều ký tự trong một chuỗi bằng regex

Python cung cấp một mô-đun regex [re] và trong mô-đun này, nó cung cấp một hàm sub[] để thay thế nội dung của một chuỗi dựa trên các mẫu. Chúng ta có thể sử dụng lại. hàm sub[] để thay thế/thay thế nhiều ký tự trong một chuỗi,

import re

sample_string = "This is a sample string"

char_to_replace = {'s': 'X',
                   'a': 'Y',
                   'i': 'Z'}

# Replace multiple characters [s, a and i] in string with values in
# dictionary using regex
sample_string = re.sub[r"[sai]",
                       lambda x: char_to_replace[x.group[0]],
                       sample_string]

print[sample_string]

đầu ra

ThZX ZX Y XYmple XtrZng

Ở đây, chúng tôi đã chuyển một mẫu r'[sai]' làm đối số đầu tiên, khớp với tất cả các lần xuất hiện của ký tự 's', 'a' và 'i'. Là đối số thứ hai trong hàm sub[], chúng ta đã chuyển một hàm lambda, hàm này tìm nạp ký tự khớp từ đối tượng khớp và sau đó trả về giá trị được liên kết với ký tự đó từ từ điển. Sau đó, với tư cách là đối số thứ ba, chúng tôi đã chuyển chuỗi gốc

Bây giờ, đối với mỗi ký tự trong chuỗi khớp với mẫu, nó gọi hàm lambda, hàm này cung cấp ký tự thay thế. Sau đó, hàm sub[] sẽ thay thế ký tự đó trong chuỗi

Nó thay thế tất cả các lần xuất hiện của,

  • Ký tự 's' với 'X'
  • Ký tự 'a' với 'Y'
  • Ký tự 'i' với 'Z'

Vì các chuỗi là bất biến trong Python và chúng tôi không thể thay đổi nội dung của nó. Do đó, hàm sub[] của mô-đun regex trả về một bản sao của chuỗi có nội dung được thay thế

con trăn. Thay thế nhiều ký tự trong một chuỗi bằng vòng lặp for

Khởi tạo một chuỗi trống mới và sau đó lặp lại tất cả các ký tự của chuỗi gốc. Trong quá trình lặp lại, đối với mỗi lần kiểm tra, nếu ký tự tồn tại trong từ điển char_to_replaced hay không,

  • Nếu có, tìm nạp thay thế ký tự đó và thêm vào chuỗi mới
  • Nếu không, sau đó thêm ký tự vào chuỗi mới

Ví dụ,

sample_string = "This is a sample string"

char_to_replace = {'s': 'X',
                   'a': 'Y',
                   'i': 'Z'}

result = ''
# Iterate over all characters in string
for elem in sample_string:
    # Check if character is in dict as key
    if elem in char_to_replace:
        # If yes then add the value of that char
        # from dict to the new string
        result += char_to_replace[elem]
    else:
        # If not then add the character in new string
        result += elem

print[result]

đầu ra

ThZX ZX Y XYmple XtrZng

Nó thay thế tất cả các lần xuất hiện của,

  • Ký tự 's' với 'X'
  • Ký tự 'a' với 'Y'
  • Ký tự 'i' với 'Z'

Vì các chuỗi là bất biến trong Python và chúng tôi không thể thay đổi nội dung của nó. Do đó, chúng tôi đã tạo một bản sao mới của chuỗi với nội dung được thay thế

Bản tóm tắt

Chúng ta có thể thay thế nhiều ký tự trong một chuỗi bằng cách sử dụng replace[] , regex. vòng lặp sub[], translate[] hoặc for trong python

Hướng dẫn về Pandas -Tìm hiểu Phân tích dữ liệu với Python

 
  • Hướng dẫn Pandas Phần #1 - Giới thiệu về Phân tích dữ liệu với Python
  • Hướng dẫn Pandas Phần #2 - Khái niệm cơ bản về Pandas Series
  • Hướng dẫn Pandas Phần #3 - Nhận & Đặt giá trị chuỗi
  • Pandas Tutorial Part #4 - Thuộc tính & phương thức của Pandas Series
  • Hướng dẫn về Pandas Phần #5 - Thêm hoặc xóa các thành phần của Pandas Series
  • Hướng dẫn về Pandas Phần #6 - Giới thiệu về DataFrame
  • Hướng dẫn về Pandas Phần #7 - DataFrame. loc[] - Chọn Hàng/Cột theo Lập chỉ mục
  • Hướng dẫn về Pandas Phần #8 - DataFrame. iloc[] - Chọn Hàng/Cột theo Tên nhãn
  • Hướng dẫn về gấu trúc Phần #9 - Lọc các hàng trong khung dữ liệu
  • Hướng dẫn Pandas Phần #10 - Thêm/Xóa Hàng & Cột DataFrame
  • Hướng dẫn về Pandas Phần #11 - Các thuộc tính & phương thức DataFrame
  • Hướng dẫn Pandas Phần #12 - Xử lý dữ liệu bị thiếu hoặc giá trị NaN
  • Hướng dẫn về Pandas Phần #13 - Lặp lại các Hàng & Cột của DataFrame
  • Hướng dẫn Pandas Phần #14 - Sắp xếp DataFrame theo Hàng hoặc Cột
  • Hướng dẫn về gấu trúc Phần #15 - Hợp nhất hoặc ghép các khung dữ liệu
  • Hướng dẫn về Pandas Phần #16 - DataFrame GroupBy được giải thích bằng các ví dụ
 

Bạn đang muốn tạo dựng sự nghiệp trong Khoa học dữ liệu với Python?

Khoa học dữ liệu là tương lai và tương lai là ở đây ngay bây giờ. Các nhà khoa học dữ liệu hiện là những chuyên gia được tìm kiếm nhiều nhất hiện nay. Để trở thành một Nhà khoa học dữ liệu giỏi hoặc để chuyển đổi nghề nghiệp trong Khoa học dữ liệu, người ta phải sở hữu bộ kỹ năng phù hợp. Chúng tôi đã tuyển chọn danh sách Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python. Các khóa học này sẽ dạy cho bạn các công cụ lập trình cho Khoa học dữ liệu như Pandas, NumPy, Matplotlib, Seaborn và cách sử dụng các thư viện này để triển khai các mô hình Máy học

Kiểm tra Đánh giá chi tiết về Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python

Hãy nhớ rằng, Khoa học dữ liệu đòi hỏi rất nhiều kiên nhẫn, bền bỉ và thực hành. Vì vậy, hãy bắt đầu học ngay hôm nay

Chủ Đề