目录
一、前言
这篇文章的标题出自一道Python编程题。题目要求大致如下:Input一个仅包含英文字母、空格或标点的字符串,Output每行一个8位二进制数,表示相应的ASCII码。
二、ASCII码
ASCII,全称:American Standard Code for Information Interchange,中文名:美国信息交换标准代码。它是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。ASCII是当前最通用的信息交换标准,并等同于国际标准ISO/IEC 646。截止目前为止共定义了128个字符。
ASCII字符代码表如下:
三、基础模块
1.输入字符串:list = input()
2.对字符串中每个字符进行遍历:for x in list:
3.单个字符转换为ASCII码(十进制):ord(x)
4.将ASCII码(十进制)转换为二进制:bin(x)
5.免去“0b”(按5中代码运行,结果中前两个字符为“0b”,需舍去):x[2:]
6.转换为8位:x.rjust(a, 'b')
7.汇总
list = input() #输入字符串
for x1 in list: #对list中每个字符从前往后进行遍历
x2 = ord(x1) #单个字符转换为ASCII码(十进制)
x3 = bin(x2) #将ASCII码(十进制)转换为二进制
x4 = x3[2:] #保留x3从第2位往后的数字
x5 = x4.rjust(8,'0') #8为指定位宽;0为填充数
print(x5) #输出x5
四、代码汇总
list = input()
for x in list:
a = bin(ord(x))[2:]
print(a.rjust(8,'0'))