<HTML><HEAD>
<META charset=US-ASCII http-equiv=Content-Type content="text/html; charset=US-ASCII">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; BACKGROUND-COLOR: #ffffff">
<DIV>Hello all,</DIV>
<DIV>&nbsp;</DIV>
<DIV>Using the command prompt to run my program, the following error occurs.&nbsp;I do not believe it is because I'm using the command prompt because the same error occurs in IDLE.&nbsp; Since I used the same structure to convert text to binary as I&nbsp;did to convert text to hexadecimal (see code below error), I do not understand why the hexadecimal conversion doesn't work but the binary does. Additionally, much of the commenting had not been updated and is no longer correct, so please disregard any apparent misunderstanding through comments.</DIV>
<DIV>&nbsp;</DIV>
<DIV>C:\Program Files\Python 2.3.4c1\Programming\Programs (Complete)&gt;python hexadecimal-binary-text.py</DIV>
<DIV>Please enter numbers or text to be converted. "Hello. My name is Bob," said Fred.<BR>Convert to:<BR>1: Binary<BR>2: Hexadecimal<BR>3: Decimal<BR>2<BR>Traceback (most recent call last):<BR>&nbsp; File "Hexadecimal-Binary-Text.py", line 128, in ?<BR>&nbsp;&nbsp;&nbsp; convertxthex()&nbsp; ##convert text to hexadecimal<BR>&nbsp; File "Hexadecimal-Binary-Text.py", line 36, in convertxthex<BR>&nbsp;&nbsp;&nbsp; res += hexadec[c]&nbsp; ##same deal<BR>KeyError: 'C'</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>def convertxtbin(): ##convert text to binary<BR>&nbsp;&nbsp;&nbsp; for char in original:&nbsp;&nbsp; ##loops over the entire entry<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = 0&nbsp;&nbsp; ##allows checking every character against the entire alphabet list<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in punct:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += char<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif char in alphabet:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while x &lt;= 26: ##if the character is punctuation or a lowercase letter<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##if its in the dictionary<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; asOctal = "%o" % int(number[x])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global res<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for c in asOctal:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += binary[c]&nbsp;&nbsp; ##add the corresponding entry in the binary list to the res list<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in punct: ##if the character isn't punctuation<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += ' ' ##add a space at the end to separate numbers<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##adds 1 to the value of x so the loop doesnt go on forever<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while 26 &lt; x &lt;= 52: ##if the character is an uppercase letter<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##if the character is in the alphabet dictionary<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; asOctal = "%o" % int(number[x - 26])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global res<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for c in asOctal:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += binary[c]&nbsp; ##print the corresponding entry in the binary entry (A = entry 36, so 36 - 26 = entry 10 = '01' = a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in punct:&nbsp;&nbsp;&nbsp; ##if character isn't punctuation<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += ' ' ##add a space at the end<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##adds 1 to x so the loop ends eventually<BR>def convertxthex(): ##convert text to hexadecimal<BR>&nbsp;&nbsp;&nbsp; for char in original:&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = 0&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in punct:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += char<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif char in alphabet:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while x &lt;= 26:&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; asHex = "%X" % int(number[x])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global res<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for c in asHex:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += hexadec[c]&nbsp; ##same deal <FONT size=4>Line 36</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in punct:&nbsp;&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += ' ' ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while 26 &lt; x &lt;= 52: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; asHex = "%X" % int(number[x - 26])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global res<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for c in asHex:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += hexadec[c] ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in punct:&nbsp;&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res += ' ' ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##same deal</STRONG><BR>def convertxtnum(): ##convert text to decimal<BR>&nbsp;&nbsp;&nbsp; for char in original:&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = 0&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while x &lt;= 34:&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.append(number[x])&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in alphabet[:8]:&nbsp;&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.append(' ') ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while 34 &lt; x &lt;= 60: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in alphabet[x]: ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.append(number[x - 26])&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char not in alphabet[:8]:&nbsp;&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; res.append(' ') ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1&nbsp; ##same deal<BR>def convertnum():&nbsp;&nbsp; ##converts numbers<BR>&nbsp;&nbsp;&nbsp; if whichconv in('1','Binary','binary','Bin','bin','B','b'): ##if user wants to convert to binary<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if int(original) &lt;= 0:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print "Please enter a positive number. "&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int(original)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; except ValueError:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = 0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if char in punct[x]:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print [punct[x] for c in original] ##prints the corresponding binary entry (if '12' is entered, it is treated as a string, so binary[int(original) - 1] converts it to an integer and subtracts one from it so that the corresponding entry can be printed since the first entry in a list is 0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x += 1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; asOctal = "%o" % int(original)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print ''.join([binary[c] for c in asOctal])&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; elif whichconv in('2','Hexadecimal','hexadecimal','Hexadec','hexadec','Hex','hex','H','h'): ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if original &gt;= 0:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print hexadec[int(original) + 8]&nbsp;&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print "Please enter a positive number. " <BR>&nbsp;&nbsp;&nbsp; elif whichconv in('3','Text','text','T','t'):&nbsp;&nbsp; ##same deal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if int(original) &lt;= 26: ##if the number is between 8 and 27 (the lowercase letters of the alphabet list<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print alphabet[int(original) + 8]&nbsp;&nbsp; ##it prints the corresponding entry in the alphabet list<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else:&nbsp;&nbsp; ##if its not one of those numbers<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print "Sorry, you didn't enter a valid number. Please enter only numbers between 0 and 26." ##prints message</DIV>
<DIV>&nbsp;</DIV>
<DIV>import time ##for time.sleep(1.1) at end<BR>import string</DIV>
<DIV>&nbsp;</DIV>
<DIV>alphabet = [' ','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']&nbsp;&nbsp;&nbsp; ##define the alphabet list<BR>punct = ['.',',',';',':','?','!','"',"'"]<BR><STRONG>binary = {'0':'000','1':'001','2':'010',<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '3':'011','4':'100','5':'101',<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '6':'110','7':'111'}&nbsp; ##define the binary dictionary</STRONG><BR>number = ['0','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34']&nbsp;&nbsp;&nbsp; ##defines the number entry. goes up to 34 so convertnum() will work under the text conversion<BR><STRONG>hexadec = {'0':'0','1':'1','2':'2','3':'3','4':'4','5':'5','6':'6','7':'7','8':'8','9':'9','10':'A','11':'B','12':'C','13':'D','14':'E','15':'F'}&nbsp;&nbsp;&nbsp; ##defines the hexadecimal list</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>res = ''&nbsp;&nbsp;&nbsp; ##makes an empty list so all the conversions will work<BR>again = True&nbsp;&nbsp;&nbsp; ##beginning condition for loop<BR>while again:&nbsp;&nbsp;&nbsp; ##starts loop<BR>&nbsp;&nbsp;&nbsp; original = raw_input("Please enter numbers or text to be converted. ")&nbsp; ##enter text to be converted<BR>&nbsp;&nbsp;&nbsp; try:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int(original)&nbsp;&nbsp; ##distinguishes the numbers from the text, needs to be revised to distinguish binary and hexadecimal<BR>##&nbsp;&nbsp;&nbsp; except TypeError:<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; whichconv = raw_input("""Convert to:<BR>##1: Binary<BR>##2: Hexadecimal<BR>##3: Decimal<BR>##""")<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if whichconv in('1','Binary','binary','Bin','bin','B','b'):<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxtbin()<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print ''.join(res)<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif whichconv in('2','Hexadecimal','hexadecimal','Hexadec','hexadec','Hex','hex','H','h'):<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxthex()<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif whichconv in('3','Decimal','decimal','Dec','dec','D','d'):<BR>##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxtnum()<BR>&nbsp;&nbsp;&nbsp; except ValueError:&nbsp; ##if its not numbers<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; whichconv = raw_input("""Convert to:<BR>1: Binary<BR>2: Hexadecimal<BR>3: Decimal<BR>""")&nbsp;&nbsp;&nbsp; ##what conversion?<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if whichconv in('1','Binary','binary','Bin','bin','B','b'): ##if binary<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxtbin()&nbsp; ##convert text to binary<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif whichconv in('2','Hexadecimal','hexadecimal','Hexadec','hexadec','Hex','hex','H','h'): ##if hexadecimal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxthex()&nbsp; ##convert text to hexadecimal <FONT size=4>Line 128</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif whichconv in('3','Decimal','decimal','Dec','dec','D','d'): ##if decimal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertxtnum()&nbsp; ##convert text to decimal<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print res&nbsp; ##print the list entries together on a line<BR>&nbsp;&nbsp;&nbsp; else:&nbsp;&nbsp; ##if the text is numbers<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; whichconv = raw_input("""Convert to:<BR>1: Binary<BR>2: Hexadecimal<BR>3: Text<BR>""")&nbsp;&nbsp;&nbsp; ##which conversion?<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; str(original)&nbsp;&nbsp; ##convert numbers back to a string<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convertnum()&nbsp;&nbsp;&nbsp; ##convert numbers to whatever<BR>&nbsp;&nbsp;&nbsp; more = raw_input("Would you like to convert more text or numbers [y/n]? ")&nbsp; ##more?<BR>&nbsp;&nbsp;&nbsp; if more in 'Yy':&nbsp;&nbsp;&nbsp; ##if so, continue loop<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pass<BR>&nbsp;&nbsp;&nbsp; elif more in 'Nn':&nbsp; ##if not,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; again = False&nbsp;&nbsp; ##break loop<BR>print "Thank you for using Multivert.&nbsp; Multivert will now close"&nbsp;&nbsp;&nbsp; ##loop broken, prints message<BR>time.sleep(1.1) ##waits for 1.1 seconds so message can be read<BR>##end of program; program closes</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks in advance,</DIV>
<DIV>Orri</DIV></BODY></HTML>