Python

Как да използваме макетрани в Python 3

Как да използваме макетрани в Python 3
The макетрани () function е вграден метод за превод в Python, използван за създаване на таблици за преобразуване на символни карти. Един символ се превежда в друг знак по този метод. Тази функция може да се приложи към данните за низовете и речника към символите на картата. Представяне на Unicode на символа се използва в таблицата за преводи. The превод () Функцията се използва за преобразуване на данните от таблицата за превод в низови данни. Този урок ще обясни как макетрани () метод може да се използва в Python за картографиране на символи.

Синтаксис

низ.макетрани (arg1 [, arg2 [, arg3]])

The макетрани () функцията се отнася за съдържанието на низ стойност. Тази функция може да приема три аргумента. Първият аргумент е задължителен, а другите два аргумента не са задължителни. Когато в този метод се използва само един аргумент, тогава аргументът ще бъде речник.  Когато в този метод се използват два аргумента, тогава и двата аргумента ще бъдат низове с еднаква дължина. Когато в този метод се използват три аргумента, тогава третият аргумент ще бъде низ, който ще премахне символите от данните за низа. Използването на функцията maketrans () в низови и речникови данни е показано в примерите по-долу.

Пример 1: Използване на maketrans () за превод на ключа на речника

Следният скрипт показва използването на функцията maketrans () за речникови данни. Преди беше споменато, че функцията maketrans () взема само един аргумент за речниковата променлива. Персонализирана функция, наречена make_translation (), се използва тук за създаване на таблица за превод въз основа на предоставената стойност на низа чрез макетрани () функция. Две за цикли и два брояча се използват тук за отпечатване на правилния знак, картографиран от всеки ASCII код.

#!/ usr / bin / env python3
 
# Дефинирайте функцията за превод на речника в таблицата за преводи
def make_translation (dictVar, strVar):
# Създайте таблицата за преводи
trans_table = strVar.макетрани (dictVar)
print ("Оригиналният речник е: \ n", dictVar)
print ("Преведената таблица на речника е: \ n", trans_table)
печат ("\ n")
# Инициализирайте първия брояч за речник
брояч1 = 1
за key1 в dictVar:
# Инициализирайте втория брояч за таблица за преводи
брояч2 = 1
за key2 в trans_table:
ако брояч1 == брояч2:
print ("% s е преведено на% d"% (ключ1, ключ2))
почивка
# Увеличаване на втори брояч
брояч2 = брояч2 + 1
# Увеличаване на първия брояч
брояч1 = брояч1 + 1
 
# Определете речник, където ключът е низ
dictData = "A": 90, "B": 59, "C": 81, "D": 75
# Определете списък с символи за превод
низ = "ABCD"
# Извикайте функцията за превод
make_translation (dictData, низ)

Изход:

След стартиране на скрипта ще се появи следният изход. Таблицата за преводи съдържа ASCII кода на ключовата стойност на речника.

Пример 2: Използване на maketrans () за превод на символите на низа

Следващият пример показва използването на макетрани () с низови данни. Две низови стойности ще бъдат взети като текст за търсене и ще заменят текста и тези текстови стойности ще бъдат използвани като аргументи за макетрани () функция. Трябва да имате предвид, че дължината на входния и изходния текст трябва да бъде еднаква, за да се създаде таблицата за преводи. В противен случай ще се генерира грешка. The превод () тук се използва функцията за преобразуване на данните от таблицата за преводи в низови стойности.

#!/ usr / bin / env python3
 
# Въведете списъка с символи, които искате да преведете
search = input ("Въведете списъка с символи за търсене \ n")
# Въведете списъка с символи, който искате да замените
replace = input ("Въведете списъка със заместващи символи \ n")
 
# Проверете дължината на търсене и замяна на списъка с символи
ако len (търсене) == len (заместване):
 
# Определете данните за низа
оригинален_текст = "+8801822594876"
# Създайте таблицата за превод, използвайки maketrans ()
модифициран_текст = оригинален_текст.макетрани (търсене, замяна)
 
# Отпечатайте оригиналния текст
print ("Оригиналният текст е:", original_text)
# Отпечатайте изхода след прилагане на maketrans ()
print ("Изходът на таблицата за картографиране е:", modified_text)
# Отпечатайте изхода след прилагане на translate ()
print ("Замененият текст е:", original_text.превод (модифициран_текст))
друго:
print ("Дължината на текста за търсене и заместващия текст не са равни")

Изход

След стартиране на скрипта, 856 се приема като символи за търсене и 487 се приема като заместващи символи в следващия изход. В този случай 8 се заменя с 4, 5 се заменя с 8 и 6 се заменя със 7 в низа, „+8801822594878.'Модифицираният изход е' +4401422894477.'

Пример 3: Използване на maketrans () за превод и изтриване на символи в низа

Следващият пример показва използването на три аргумента с метода maketrans (). Ето, низ е основният низ, където символите на str1 ще бъде претърсен. Ако някой символ съвпада с избрания знак, тогава този знак ще бъде заменен от съответния знак на str2. Ако има някакъв знак на str3 съвпада с всеки символ на низ променлива, тогава този знак ще бъде премахнат от низ променлива. Методът maketrans () се извиква с два аргумента за един път, а методът maketrans () се извиква с три аргумента за друг път.

#!/ usr / bin / env python3
 
# Определете основния низ
низ = "Linux"
# Определете списъка с символи за търсене
str1 = "iu"
# Определете списъка с символи, който да замените
str2 = "Ui"
# Определете списъка с символи, който да изтриете
str3 = "L"
 
# Отпечатайте основния текст
print ("Оригиналният текст:", низ)
 
# Създайте таблицата за преводи
dict1 = низ.макетрани (str1, str2)
print ("\ nТаблицата за преводи: \ n", dict1)
print ("Модифицираният низ:", низ.превод (dict1))
 
# Създайте таблицата за преводи след изтриване на символи
dict2 = низ.макетрани (str1, str2, str3)
print ("\ nТаблицата за превод след изтриване на символите: \ n", dict2)
# отпечатва модифицирания низ след превод
print ("\ nМодифицираният низ след изтриване:", низ.превод (dict2))

Изход

След стартиране на скрипта се появява следният изход. Тук символите „i“ и „u“ на „Linux„се заменят с символи„ U “и„ i “при извикване на maketrans () с два аргумента и изходът е„LUnix.„Когато методът maketrans () бъде извикан с три аргумента, тогава символът„ L “се изтрива от третия аргумент и изходът е„Unix.'

Заключение

Този урок показва колко лесно можете да замените съдържанието на речникови или низови данни чрез метода maketrans (). Чрез този метод могат да бъдат изтрити и определени символи в низ. Надявам се, че примерите, показани в този урок, ще помогнат на потребителите на Python да разберат някои от употребите на метода maketrans () и ще покажат как да прилагат правилно този метод в собствения си скрипт.

Как да инсталирате League Of Legends на Ubuntu 14.04
Ако сте фен на League of Legends, това е възможност за вас да тествате League of Legends. Имайте предвид, че LOL се поддържа на PlayOnLinux, ако сте п...
Инсталирайте най-новата стратегия за игра OpenRA на Ubuntu Linux
OpenRA е Libre / Free Real Time стратегия за игра, която пресъздава ранните игри на Westwood като класическата Command & Conquer: Red Alert. Разпредел...
Инсталирайте най-новия Dolphin Emulator за Gamecube & Wii на Linux
Dolphin Emulator ви позволява да играете избраните от вас игри Gamecube & Wii на Linux Personal Computers (PC). Като безплатно достъпен и емулатор на...