Đây là một giải pháp khác, sử dụng gói unicode cấp thấp được gọi là
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
6.Trong cấu trúc Unicode, một ký tự như 'Ô' thực sự là một ký tự tổng hợp, được tạo thành từ nhân vật 'O' và một nhân vật khác gọi là 'Kết hợp giọng nói nghiêm trọng', về cơ bản là '' '. Sử dụng phương pháp
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
7 trong import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
6, người ta có thể thu được các unicodes [tính bằng hex] của hai phần này.composite character, made of the character 'o' and another character called 'COMBINING GRAVE ACCENT', which is basically the '̀'. Using the method import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
7 in import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
6, one can obtain the unicodes [in hex] of these two parts.>>> import unicodedata as ud
>>> ud.decomposition['ù']
'0075 0300'
>>> chr[0x0075]
'u'
>>> >>> chr[0x0300]
'̀'
Do đó, để truy xuất 'u' từ 'ù', trước tiên chúng ta có thể thực hiện phân tách chuỗi, sau đó sử dụng hàm
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
9 tích hợp để chuyển đổi [xem luồng này để chuyển đổi chuỗi hex thành số nguyên], sau đó lấy ký tự Sử dụng hàm pip install translate0.
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
Tôi là người mới đến đại diện và tiện ích Unicode trong Python. Nếu bất cứ ai có bất kỳ đề xuất nào để cải thiện phần mã này, tôi sẽ rất vui khi biết điều đó!
Cheers!
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ụ cho khán giả 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 dịch thuật cho các ngôn ngữ chính.
pip install translate
Dưới đây là một ví dụ về việc dịch một câu đơn giản từ tiếng Anh sang tiếng Đức. Mặc định từ ngôn ngữ là tiếng Anh.
from translate import Translator translator= Translator[to_lang="German"] translation = translator.translate["Good Morning!"] print translation
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
Guten Morgen!
Giữa hai ngôn ngữ
Nếu chúng ta có nhu cầu xác định ngôn ngữ và ngôn ngữ, thì chúng ta có thể chỉ định nó như trong chương trình dưới đây.
from translate import Translator translator= Translator[from_lang="german",to_lang="spanish"] translation = translator.translate["Guten Morgen"] print translation
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được đầu ra sau -
Buenos días
Sử dụng các dịch giả nổi tiếng khác nhau [ví dụ: người dịch Google và hơn thế nữa] với Python.
Giới thiệu
Trong hướng dẫn này, chúng tôi sẽ khám phá các khả năng khác nhau để dịch một văn bản hoặc từ sử dụng Python. Từ kinh nghiệm của tôi, điều này rất hữu ích nếu bạn muốn tự động hóa bản dịch của nhiều đoạn, câu hoặc từ.
Hơn nữa, bạn có thể có một nhân viên phụ trợ, nhận được dữ liệu mới liên tục và có thể trả lại yêu cầu với bản dịch hoặc lưu trữ các bản dịch khác nhau trong cơ sở dữ liệu [điều này rất hữu ích trong các tác vụ NLP].NLP tasks].
Một trong những lý do để chọn Python ngoài cú pháp rõ ràng và thư viện mở rộng là cộng đồng tuyệt vời hoạt động rộng rãi dựa trên sự phát triển của chính ngôn ngữ hoặc mở rộng chức năng với các mô -đun bên thứ ba.
Chính xác, một trong những mô -đun làm cho việc dịch các văn bản là Deep_Translator, cung cấp hỗ trợ cho nhiều dịch giả nổi tiếng.deep_translator, which provides support for multiple famous translators.
Tổng quan
Deep_Translator là một gói Python linh hoạt để dịch giữa các ngôn ngữ khác nhau một cách đơn giản. Về cơ bản, mục tiêu của gói là tích hợp nhiều dịch giả bao gồm Google dịch, DEEPL, PONS, Linguee và những người khác trong một công cụ rộng lớn. Tôi sẽ đưa ra các ví dụ về cách sử dụng một số dịch giả ở đây. Tuy nhiên, tôi sẽ không bao gồm tất cả mọi thứ, do đó tôi khuyến khích bạn kiểm tra các tài liệu chính thức sau đó.Google Translator, DeepL, Pons, Linguee and others in one extensive tool. I will give examples on how to use some of the translators here. However, I will not cover everything, therefore I encourage you to check the official docs afterwards.
Cài đặt
Nên cài đặt gói bằng PIP. Tóm lại, để cài đặt bản phát hành ổn định, hãy chạy lệnh này trong thiết bị đầu cuối của bạn:pip. Briefly, to install the stable release, run this command in your terminal:
pip install deep-translator
Đây là phương pháp ưa thích để cài đặt Deep_Translator, vì nó sẽ luôn cài đặt bản phát hành ổn định gần đây nhất. Nếu bạn không cài đặt PIP, hướng dẫn cài đặt Python này có thể hướng dẫn bạn trong suốt quá trình.
Google dịch
Trình dịch Google đã được tích hợp trong gói Deep_Translator và có thể được sử dụng trực tiếp bằng cách nhập nó. Sau đó, một thể hiện được tạo, trong đó ngôn ngữ nguồn và ngôn ngữ đích được đưa ra làm đối số. Phương thức dịch có thể được sử dụng sau đó để trả về văn bản dịch.
Trong mã bên dưới, giá trị tự động được sử dụng để cho Google dịch phát hiện ngôn ngữ nào được sử dụng làm ngôn ngữ nguồn và giá trị đích được đưa ra làm viết tắt, viết tắt của tiếng Đức trong trường hợp này.
from deep_translator import GoogleTranslatorto_translate = 'I want to translate this text'translated = GoogleTranslator[source='auto', target='de'].translate[to_translate]# outpout -> Ich möchte diesen Text übersetzen
Hơn nữa, bạn có thể dịch từ một tệp văn bản. Điều này cũng đơn giản và có thể dễ dàng đạt được bằng cách cập nhật mã trước đó. Tôi cũng muốn chỉ ra ở đây rằng các ngôn ngữ nguồn và mục tiêu có thể được truyền bằng tên thay vì viết tắt.
from deep_translator import GoogleTranslatortranslated = GoogleTranslator[source='english', target='german'].translate_file['path/to/file']
Bây giờ điều gì sẽ xảy ra nếu bạn có câu bằng các ngôn ngữ khác nhau và bạn muốn dịch tất cả chúng sang cùng một ngôn ngữ mục tiêu. Mã sau đây cho thấy cách bạn có thể làm điều này
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
0Tuyệt! Bây giờ hãy để khám phá các dịch giả khác.
CẦU NÃO
Pons là một trong những nhà xuất bản ngôn ngữ hàng đầu của Đức. Nó chủ yếu nổi tiếng khi dịch các từ đơn hoặc câu nhỏ. Nó có một cơ sở dữ liệu phong phú về các từ và thậm chí có thể vượt trội hơn Google dịch khi nói đến việc dịch các từ và nhận từ đồng nghĩa.
May mắn thay, Deep_Translator cũng hỗ trợ pons. Mã sau đây trình bày cách sử dụng nó. API trông giống như cái trước chỉ có những thay đổi nhỏ
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
1Hơn nữa, bạn có thể nhận được tất cả các từ đồng nghĩa hoặc đề xuất mà pons trả lại
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
2Linguee
Người dịch ngôn ngữ là một sự phù hợp song ngữ trực tuyến cung cấp một từ điển trực tuyến cho một số cặp ngôn ngữ, bao gồm nhiều cặp câu song ngữ. Giống như các dịch giả trước đó, chức năng này được tích hợp trong gói Deep_Translator.
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
3Giống như người dịch Pons, bạn có thể nhận được tất cả các từ đồng nghĩa và các đề xuất bổ sung bằng cách đặt đối số return_all
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
4Bộ nhớ của tôi
Người dịch MyMemory là bộ nhớ dịch lớn nhất thế giới và sử dụng miễn phí 100%. Nó đã được tạo ra thu thập TMS từ Liên minh châu Âu, Liên Hợp Quốc và sắp xếp các trang web đa ngôn ngữ cụ thể tốt nhất.
Phiên bản cuối cùng của bộ chuyển dịch sâu hỗ trợ các bản dịch MyMemory. Mã sau đây trình bày cách sử dụng nó
import unicodedata as ud
def get_ascii_char[c]:
s = ud.decomposition[c]
if s == '': # for an indecomposable character, it returns ''
return c
code = int['0x' + s.split[][0], 0]
return chr[code]
5Sự kết luận
Hướng dẫn này đã trình bày cách dịch văn bản và tự động hóa nhiều bản dịch bằng Python. Chính xác hơn là sử dụng gói bộ xử lý sâu, hỗ trợ nhiều dịch giả nổi tiếng. Hãy nhớ rằng tôi đã chứng minh một số chức năng ở đây. Trên thực tế, Translator Deep cũng đã hỗ trợ cho DEEPL, Yandex và các dịch giả khác không được thảo luận ở đây. Bạn có thể kiểm tra những điều này trong các tài liệu chính thức. Dưới đây là một liên kết đến tài liệu và repo github. Vui lòng viết cho tôi bất cứ lúc nào nếu bạn có bất kỳ câu hỏi nào về gói hoặc nếu bạn muốn đóng góp cho dự án [vui lòng làm].deep-translator package, which supports multiple famous translators. Keep in mind that I demonstrated some of the functionality here. In fact, deep-translator have also support for DeepL, Yandex and other translators that are not discussed here. You can check these in the official docs. Here is a link to the docsand the github repo. Feel free to write me anytime if you have any questions about the package or if you want to contribute to the project [please do].