TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to PYTHON

Python ord, chr Built Ins

Use the ord and chr built-in methods. These convert characters to integers and back again.
Ord, chr. Think of letters like A, B and C. These are parts of words. But they have an underlying representation. A sequence of bits that represents that letter.Strings
Characters. In Python characters are represented by numbers. Often we use a one-character string. With ord we convert this into an integer. With chr, an integer into a string.Built-ins
Ord example. In this program, each "letter" is a one-character string. We call ord and the result in an integer. We can do things like multiply or add that integer.

Note: The letters A, B and C have sequential numbers. This is how they are stored in ASCII.

Note 2: The number strings 1, 2 and 3 are made of characters that are represented in ASCII by 49, 50 and 51.

Python program that uses ord built-in letters = "ABCabc123" for letter in letters: # Get number that represents letter in ASCII. number = ord(letter) print(letter, "=", number) Output A = 65 B = 66 C = 67 a = 97 b = 98 c = 99 1 = 49 2 = 50 3 = 51
Chr example. Next we consider the chr built-in function. This does the opposite of ord. It converts a number (an integer) into a one-character string.

Here: We convert 97 back into the lowercase "a." This code could be used to round-trip letters and digits.

Python program that uses chr numbers = [97, 98, 99] for number in numbers: # Convert ASCII-based number to character. letter = chr(number) print(number, "=", letter) Output 97 = a 98 = b 99 = c
Chr, translate. Let's do something really crazy. Here we create strings with chr in for-loops for use as the mapped keys and values of maketrans. We then translate the strings.

So: We generate translation keys and values with an algorithm, and then apply the generated table to translate strings.

Python program that uses chr, maketrans, translate # Generate string for translation. initial = "" for i in range(97, 97 + 26): initial += chr(i) # Generate mapped chars for string. translated = "" for i in range(97, 97 + 26): translated += chr(i - 10) print("INITIAL ", initial) print("TRANSLATED", translated) # Create a lookup table. table = str.maketrans(initial, translated) # Translate this string. value = "thank you for visiting" result = value.translate(table) print("BEFORE", value) print("AFTER ", result) Output INITIAL abcdefghijklmnopqrstuvwxyz TRANSLATED WXYZ[\]^_`abcdefghijklmnop BEFORE thank you for visiting AFTER j^Wda oek \eh l_i_j_d]
ROT13. The simplest examples above would not be found in real programs. But algorithms like ROT13, which are used sometimes in programs, also can be implemented with ord and chr.

Also: Ord and chr built-ins help transform characters and strings. But they are not ideal for all translations.

ROT13

Translate: With maketrans and translate() we can translate strings. We can use chr and ord to build translation strings for these methods.

Translate
A summary. Chr and ord are something we need to know to effectively use Python. There is a difference between an integer and a one-character string.
We must convert to an integer with ord—and back to a string with chr. We can change characters by adding or subtracting offset values.
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf