Python根据用户输入的2进制字符串转8进制
Python根据用户输入的2进制字符串转8进制
问题:
从键盘输入一个由 1 和 0 组成的二进制字符串 s,转换为八进制数输出显示在屏幕上。例如输入‘1100’,输出‘14’
实现1:
# 请输入一个由1和0组成的二进制数字串
#基本思路:2进制先转10进制,再由10进制转8进制。
#‘1100’ = 2^3+2^2
#只有1是有效位,2^i由i所在位置决定
#把字符串逆序,以配合range的范围,不影响结果。
#10进制转8进制,用format
s = input('请输入一个由1和0组成的二进制数字串:')
s1 = s[::-1]
sum = 0
for i in range(len(s)):if eval(s1[i]) == 1:sum += 2**i
print('{:o}'.format(sum))
实现2:
#这个实现想法比较奇葩,通过左移字符串,字符串逐个取出并处理。
s = input() # 请输入一个由1和0组成的二进制数字串
d = 0
while s:d = d*2 + (ord(s[0]) -ord('0'))s = s[1:]
print("转换成八进制数是:{:o}".format(d))#1100= 1*2^3+1*2^2+0*2^1+02^0 ---数学思维
#1100= (((1*2+1)*2+1)+0)*2+0 ---计算思维
#把每次计算归结为上次结果*2+本次结果
Python根据用户输入的2进制字符串转8进制相关推荐
- python等待用户输入_Python等待时间,等待用户输入
python等待用户输入 Sometimes we want our python program to wait for a specific time before executing the n ...
- Python之用户输入
大多数程序都旨在解决最终用户的问题,为此,需要从用户那里获取一些信息.函数input()让程序暂停运行,等待用户输入一些文本. 例如: name = input("Please intput ...
- Python中用户输入与while循环
文章目录 前言 一.用户输入 1.输入字符串 2.使用函数int()获取数值输入 3.求模运算符的应用 二.while循环 1.简单的while循环 2.通过用户输入退出while循环 3.使用标志 ...
- 重温Python基础——用户输入和while循环
人生苦短,我用Python 序言 函数input()的工作原理 使用int()来获取数值输入 while循环简介 使用break退出循环 在循环中使用continue 避免无限循环 删除为特定值的所有 ...
- 16进制字符串转10进制数值
16进制字符串转10进制数值 描述 写出一个程序,接受一个十六进制的数,输出该数值的十进制表示. 数据范围:保证结果在 1≤n≤2^31−1 输入描述:输入一个十六进制的数值字符串. 输出描述:输出该 ...
- 将时间转换为16进制字符串或16进制小端模式byte数据
1.将String类型的时间转换 1>String类型时间转换为Date类型的时间 2>时间转换为时间戳 3>时间戳转换为16进制字符串 4>16进制字符串转换为16进制小端模 ...
- C++ 16进制字符串转16进制数组函数
@TOCC++ 16进制字符串转16进制数组函数 unsigned char buf[], int len) { if (str != NULL && buf != NULL & ...
- java-16进制字符串转16进制int、将10进制的数字转为16进制
String h="76F41000"; int re= new BigInteger(h, 16).intValue() 将10进制的数字转为16进制字符串 System.out ...
- 使用栈将用户输入的十进制数转换为其指定的进制(2进制、8进制、16进制)数据
进制转换的核心模块 当e>9时,e+55输出A~F字符 void conversion( SeqStack* s, int n ,int m) {int e;while (n){Push_Seq ...
最新文章
- 通过BCS对象模型使用筛选器
- OpenWRT 随记
- Oracle 11g 之自动收集统计信息
- 攻城掠地端mysql_【图片】攻城掠地单机版本服务端+攻城掠地GM工具【单兆权吧】_百度贴吧...
- HYSBZ - 2243染色——树链剖分+线段树建树技巧
- 正则表达式--C#正则表达式的符号及例子
- 基于MATLAB的发票识别系统
- 个人练习 —— 使用c#、Winform窗体 编写鼠标连点器(附代码和工具逻辑)
- java更新word目录_java aspose.words 生成word目录和更新目录
- 转行it学python_转行IT行业为什么要学习Python开发
- 用ybc_box做小程序
- uniapp打包app教程
- 求会java的大佬救一下场,领导让研究一个应用信息导出工具的代码实现原理,我之前没系统学过java,来个会的大佬帮忙解释下哈,跪谢...这个如果只是单纯实现抓取包名,应用名称的话代码可以怎么精简呀?
- python appium连接安卓真机测试
- Android如何隐藏底部虚拟按键
- EVOLAB | 再度解析共识机制:POW
- 阿里云部署vmware报错
- python3爬虫豆瓣_Python爬虫(3)豆瓣登录
- 计算机公务员考试 真题及答案,公务员考试c类计算机考试真题及答案2.pdf
- OpenWrt安装ser2net.ipk软件包