Dịch Python

Loại trả lại. str Mô tả. Hàm translate[] trả về một chuỗi mới được tạo từ chuỗi đầu vào bằng cách thay thế hoặc xóa một số ký tự đã chỉ định khỏi chuỗi đầu vào theo ánh xạ Unicode được cung cấp trong tham số translate_table

Ví dụ về translate[] trong Python

# String Input
msg = "This is a normal message"

# Translation Table
table = {
    ord['a'] : '6', 
    ord['t'] : '9', 
    ord['s'] : '0', 
    ord['i'] : '4',
    ord['e'] : '1',
    ord['r'] : '2' }

print["Input: ", msg]
print["Output: ", end = ""]
print[msg.translate[table]]

đầu ra

Input:  This is a normal message
Output: Th40 40 6 no2m6l m1006g1

Ghi chú

  • Vì hàm translate[] chỉ chấp nhận ánh xạ Unicode làm tham số translate_table nên chúng tôi đã sử dụng hàm ord[] để truy cập mã Unicode cho các ký tự đã chỉ định

Dịch [] trong Python là gì?

Python cung cấp một số hàm dựng sẵn để thực hiện một số thao tác chuỗi tiêu chuẩn một cách hiệu quả. Một hàm như vậy là hàm translate[], thay thế một số ký tự trong một chuỗi đã cho bằng một bộ ký tự khác. Quá trình này còn được gọi là dịch chuỗi

Hàm translate[] sử dụng đối tượng ánh xạ Unicode mô tả các thay thế cho các ký tự được chỉ định. Đối tượng ánh xạ Unicode này được truyền vào tham số translate_table trong hàm translate[]

Bạn có thể nhận thấy việc sử dụng ánh xạ Unicode trong ví dụ đã thảo luận trước đó trong đó biến bảng bao gồm một đối tượng Từ điển Python đại diện cho ánh xạ Unicode. Hàm translate[] đã sử dụng ánh xạ này để chuyển đổi chuỗi đầu vào "Đây là thông báo bình thường" thành "Th40 40 6 no2m6l m1006g1" bằng cách thay thế các ký tự 'a', 't', 's', 'i', 'e

Làm cách nào để sử dụng hàm translate[] trong Python?

Dịch chuỗi là một quá trình thay thế các ký tự có trong chuỗi đích bằng một số ký tự khác. Vì bảng ánh xạ hoặc bảng dịch chỉ định các thay thế sẽ diễn ra trong chuỗi đích, quá trình dịch chuỗi phụ thuộc vào đối tượng bảng dịch hoặc Ánh xạ ký tự Unicode

Do đó, dựa trên loại đối tượng bảng ánh xạ, chủ yếu có hai cách để chúng ta có thể sử dụng hàm translate[] trong Python

  • Dịch thủ công - Trong phương thức này, chúng tôi cung cấp một đối tượng Từ điển Python đơn giản làm đối số cho hàm dịch. Đối tượng Từ điển này mô tả Ánh xạ Unicode của các ký tự cho quá trình dịch chuỗi
  • Dịch hàm trợ giúp - Trong phương pháp này, chúng ta sẽ sử dụng hàm chuỗi dựng sẵn được gọi là maketrans[] để tạo bảng dịch được cung cấp làm đối số cho hàm translate[]. Hàm maketrans[] là một phương thức tĩnh. Nó nhận tối đa ba đối số [hai đối số tùy chọn] và tạo ánh xạ một đối một của một ký tự sang bản dịch của nó

Thêm ví dụ

ví dụ 1. Dịch thủ công

# String Input
msg = "Hhello my name is PRElon rusk"

# Translation Table
table = {
    ord['h'] : None, 
    ord['P'] : None, 
    ord['r'] : 'M',
    ord['R'] : None }

print["Input: ", msg]
print["Output: ", end = ""]
print[msg.translate[table]]

đầu ra

Input:  Hhello my name is PRElon rusk
Output: Hello my name is Elon Musk

Giải trình. Ở đây, chúng tôi sử dụng Từ điển Python để thay thế các ký tự được chỉ định bằng các ký tự khác hoặc giá trị Không có

Bây giờ, chúng ta biết rằng đối tượng bảng ánh xạ xác định sự thay thế cho các ký tự đã chỉ định trong chuỗi đích. Do đó, khi chúng ta ánh xạ một ký tự cụ thể có trong chuỗi đích bằng Không, nó sẽ được thay thế bằng giá trị Không có, tôi. e. , đã xóa khỏi chuỗi mục tiêu

ví dụ 2. Maketrans[] sử dụng Đối số đơn

# String Input
msg = "How iz jou ?"

# Dictionary Object
my_dict = {
    ord['i'] : 'are', 
    ord['z'] : None , 
    ord['j'] : 'y'  }

# Generating Translation Table
table = str.maketrans[my_dict]

print["Input  :", msg]
print["Output : ", end = ""]
print[msg.translate[table]]

đầu ra

Input  : How iz jou ?
Output : How are you ?

Giải trình. Khi sử dụng một đối số duy nhất trong hàm maketrans[], đối số phải là đối tượng Từ điển Python chứa ánh xạ Unicode của các ký tự. Hàm maketrans[] sử dụng đối tượng ánh xạ Unicode trong Từ điển Python này để tạo bảng dịch cho hàm translate[]

ví dụ 3. Maketrans[] sử dụng hai đối số

# String Input
msg = "ABC-abc-GHI"

# Replacement Strings
s1 = "abc"
s2 = "DEF"

# Generating Translation Table
table = str.maketrans[s1, s2]

print["Input  :", msg]
print["Output : ", end = ""]
print[msg.translate[table]]

đầu ra

Input  : ABC-abc-GHI
Output : ABC-DEF-GHI

Giải trình. Khi hai đối số được truyền trong khi sử dụng hàm maketrans[], các đối số phải là hai chuỗi có cùng độ dài vì mỗi ký tự trong đối số chuỗi đầu tiên được ánh xạ với ký tự có trong chỉ mục tương ứng của chuỗi thứ hai. Do đó, trong ví dụ trên, 'a' được ánh xạ với 'D', 'b' với 'E' và 'c' với 'F'

Ví dụ 4. Maketrans[] sử dụng ba đối số

________số 8

đầu ra

# String Input
msg = "This is a normal message"

# Translation Table
table = {
    ord['a'] : '6', 
    ord['t'] : '9', 
    ord['s'] : '0', 
    ord['i'] : '4',
    ord['e'] : '1',
    ord['r'] : '2' }

print["Input: ", msg]
print["Output: ", end = ""]
print[msg.translate[table]]
0

Giải trình. Khi tất cả ba đối số chuỗi được truyền trong khi sử dụng hàm maketrans[], thì tất cả các ký tự của tham số thứ ba được ánh xạ tới Không, i. e. , chúng sẽ bị xóa khỏi chuỗi đích, trong khi các ký tự của tham số thứ hai thay thế các ký tự của tham số đầu tiên

Mô-đun dịch trong Python là gì?

Dịch văn bản từ ngôn ngữ này sang ngôn ngữ khác đang ngày càng trở nên phổ biến đối với các trang web khác nhau khi chúng phục vụ đối tượng quốc tế. Gói python giúp chúng tôi làm điều này được gọi là dịch. Gói này có thể được cài đặt theo cách sau. Nó cung cấp bản dịch cho các ngôn ngữ chính .

Làm cách nào để tạo một trình dịch trong Python?

Các bước tiến hành Dự án dịch thuật ngôn ngữ Python .
Nhập các mô-đun và thư viện cần thiết. từ nhập khẩu tkinter *.
Thêm ngôn ngữ vào dự án. ngôn ngữ=googletrans. .
Tạo một cửa sổ. .
Thêm trình đơn thả xuống khung, nút, vùng văn bản và ngôn ngữ vào cửa sổ. .
Tạo hàm Translate[]. .
Lệnh chính

Python sử dụng trình dịch nào?

Python là ngôn ngữ lập trình cấp cao được thiết kế để thực hiện nhiều tác vụ. Nó dựa trên trình thông dịch CPython để dịch mã Python thành thứ mà máy có thể đọc được.

Chủ Đề