Chtěl bych se zeptat, zda se dá nějak převést znak (například písmeno A) do hodnoty z ASCII tabulky (v našem případě 65) a potom i zpět (zadám 65 a vypíše se mi A)? Pracuju na programu, který bude umět převádět znaky do binárního kódu... Díky předem za všechny nápady.
Fórum › Python
Převádění znaků na hodnotu z ASCII tabulky?
Už se to tady několikrát řešilo:
>>> ord('A')
65
>>> chr(65)
'A'
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
To sem opravdu??ct necht?l. Omlouv?m se. Jenom sem m?l v danou chv?l? ur?it? ?asov? skluz s u?en?m. Norm?ln? bych f?rum prohledal, ale d?ky situaci, ve kter? jsem se ocitl, to nebylo mo?n?. Je?t? jednoou se omlouv?m, p???t? u? budu hledat l?p. Tady je ten program na p?ekl?d?n? znak? do dvojkov? soustavy:
# -*- coding: cp1250 -*- ; autor: vojtech
veta=raw_input("Zadej vetu ci slovo pro prelozeni: ")
bin_veta="";hex_veta="";dec_veta=""
for pismeno in veta:
ord_pismeno=ord(pismeno)
hex_pismeno=hex(ord_pismeno)
hex_veta=hex_veta+hex_pismeno+" "
for znak in veta:
znak=ord(znak)
dec_veta=dec_veta+str(znak)+" "
hex_znak=hex(znak)
if hex_znak[-2]=="0": bin_veta=bin_veta+" 0000"
if hex_znak[-2]=="1": bin_veta=bin_veta+" 0001"
if hex_znak[-2]=="2": bin_veta=bin_veta+" 0010"
if hex_znak[-2]=="3": bin_veta=bin_veta+" 0011"
if hex_znak[-2]=="4": bin_veta=bin_veta+" 0100"
if hex_znak[-2]=="5": bin_veta=bin_veta+" 0101"
if hex_znak[-2]=="6": bin_veta=bin_veta+" 0110"
if hex_znak[-2]=="7": bin_veta=bin_veta+" 0111"
if hex_znak[-2]=="8": bin_veta=bin_veta+" 1001"
if hex_znak[-2]=="9": bin_veta=bin_veta+" 1001"
if hex_znak[-2]=="a": bin_veta=bin_veta+" 1010"
if hex_znak[-2]=="b": bin_veta=bin_veta+" 1011"
if hex_znak[-2]=="c": bin_veta=bin_veta+" 1100"
if hex_znak[-2]=="d": bin_veta=bin_veta+" 1101"
if hex_znak[-2]=="e": bin_veta=bin_veta+" 1110"
if hex_znak[-2]=="f": bin_veta=bin_veta+" 1111"
if hex_znak[-1]=="0": bin_veta=bin_veta+"0000"
if hex_znak[-1]=="1": bin_veta=bin_veta+"0001"
if hex_znak[-1]=="2": bin_veta=bin_veta+"0010"
if hex_znak[-1]=="3": bin_veta=bin_veta+"0011"
if hex_znak[-1]=="4": bin_veta=bin_veta+"0100"
if hex_znak[-1]=="5": bin_veta=bin_veta+"0101"
if hex_znak[-1]=="6": bin_veta=bin_veta+"0110"
if hex_znak[-1]=="7": bin_veta=bin_veta+"0111"
if hex_znak[-1]=="8": bin_veta=bin_veta+"1001"
if hex_znak[-1]=="9": bin_veta=bin_veta+"1001"
if hex_znak[-1]=="a": bin_veta=bin_veta+"1010"
if hex_znak[-1]=="b": bin_veta=bin_veta+"1011"
if hex_znak[-1]=="c": bin_veta=bin_veta+"1100"
if hex_znak[-1]=="d": bin_veta=bin_veta+"1101"
if hex_znak[-1]=="e": bin_veta=bin_veta+"1110"
if hex_znak[-1]=="f": bin_veta=bin_veta+"1111"
print "";print "Zapis v dekadicke soustave: ",dec_veta,"n"
print "Zapis v hexa-decimalni soustave: ",hex_veta,"n"
print "Zapis v binarni soustave: ",bin_veta,"n"
D?l? to to, co m?, ale p?ijde mi to dosti neohraban?. Kdyby m?l n?kdo n?pad, jak to ?i ono vylep?it/zkr?tit/zjednodu?it, budu mu jen vd??n?. D?ky p?edem
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 13 hostů
Podobná vlákna
Převádění čísel v soustavách 2>10 10>2 8<16 16>8 — založil Lukáš
Převádění čísel v soustavách — založil Lukáš
C# ArrayList - převádění typu obj. na int — založil PetrJansky
Jak přenést změny ve struktuře vzorové tabulky na další tabulky — založil Marty
Moderátoři diskuze