问题描述

对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:
00000
00001
00010
00011
00100
请按从小到大的顺序输出这32种01串。

输入格式

本试题没有输入。

输出格式

输出32行,按从小到大的顺序每行一个长度为5的01串。
样例输出
00000
00001
00010
00011
……

试题解答

1、直观来看字串符合二进制输出,总共输出32行,故需要在0~31遍历行数。

方法一:

for i in range(32):a='{:0>5b}'.format(i)print(a)

考察的是格式输出:
1、^,<,>分别是居中、左对齐、右对齐,后面带宽度。本题为5。
2、:号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。本题用0填充
3、+表示在正数前显示+.负数前显示-; (空格) 表示在正数前加空格。本题均是正数无需表示。
4、b、d、o、x分别是二进制、十进制、八进制、+六进制。本题为b表示二进制输出
5、使用大号{}来转义

方法二:

5位数每一位在0~1中交替遍历循环输出:

for a in range(0, 2):for b in range(0, 2):for c in range(0, 2):for d in range(0, 2):for e in range(0, 2):print(str(a) + str(b) + str(c) + str(d) + str(e))

拓展:Python格式化输出.format()函数

format函数是Python中一个很强大的格式化输出函数,使用花括号{}来占位,下面结合代码来讲述format函数的用法。

一、匹配顺序

print('姓名:{},年龄:{}'.format('张三', 25))

运行结果:姓名:张三,年龄:25
可以看出,format将根据顺序对前面的花括号进行匹配输出。当然,花括号内也可以写上序号,对format中的内容进行匹配,如下代码所示:

print('姓名:{0},年龄:{1}'.format('张三', 25))

运行结果:姓名:张三,年龄:25

print('姓名:{0},年龄:{0}'.format('张三', 25))

运行结果:姓名:张三,年龄:张三

甚至还可以通过类似字典的方式指定映射输出:

print('姓名:{n},年龄:{a}'.format(n='张三', a=25))

运行结果:姓名:张三,年龄:25

对于列表,format也提供了很方便的输出:

person= ['张三' , 25]
print('姓名:{0[0]},年龄:{0[1]}'.format(person))

运行结果:姓名:张三,年龄:25

花括号内,第一个0表示format()函数内参数的序号。对于字典:

person= {'姓名':'张三' , '年龄':25}
print('姓名:{0[姓名]},年龄:{0[年龄]}'.format(person))

运行结果:姓名:张三,年龄:25

注意:中括号内的key是不用引号引起来的。如果改成{0[“姓名”]}就会报错。

二、对齐与宽度

format使用^,<,>表示居中、左对齐、右对齐,后面加上的数字表示宽度,在对齐符号之前加上特定字符表示当输出的内容不足以占满宽度时,以特定字符填充。

print('姓名:{:0^8},年龄:{:*>4}'.format('张三', 25))

运行结果:姓名:000张三000,年龄:**25
注意:冒号不能少。

三、精度

print('{:.3f}'.format(123.45678))

输出结果:123.457

最后一个数字之所以是7,是因为format会对数据进行四舍五入。

四、千位分隔符

print('{:,}'.format(123456789))

输出结果:123,456,789

五、进制数输出

b、d、o、x分别是二进制、十进制、八进制、十六进制

print('{:b}'.format(10))

输出结果:1010

六、总结

先给出一个综合应用:

print('{0:*^20,.3f}  {1:*>20,.3f}   {1:-^15}'.format(12345.6789, 5647854.12452,'这是一个字符串'))

1、冒号之前的数字是序号,当format内只有一位元素需要输出时,这个序号可以省略(冒号不能省略)。
2、限定的顺序不能搞错,在{}内,第一是元素序号,第二是冒号,第三是特定补充符号,第四对齐方式,第五宽度,第六千分位分隔符号,第七精度。

【蓝桥杯】基础练习 01字串 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:相关推荐

  1. 蓝桥杯 基础练习 01字串 C/C++/Java/Python描述

    蓝桥杯 基础练习 01字串 C/C++/Java/Python描述   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博 ...

  2. 蓝桥杯 基础练习 01字串(水题)

    基础练习 01字串 时间限制:1.0s   内存限制:256.0MB 问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 ...

  3. “蓝桥杯”基础练习:01字串

    问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入 ...

  4. 蓝桥杯基础练习之 闰年判断 、 01字串 、查找整数、数列特征 、字母图形

     闰年判断 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数: 2. 年份是400的倍数. 其他的年份都不是闰年. 输入格式 ...

  5. 【c语言】蓝桥杯基础练习 01字串

    [问题描述] 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. ...

  6. 基础的01字串 蓝桥杯基础题

    问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串. 输入 ...

  7. 蓝桥杯 基础练习全解 答案+解析 共17题 python

    关键字 A+B问题,数列排序,十六进制转八进制,十六进制转十进制,十进制转十六进制,特殊回文数,回文数,特殊的数字,杨辉三角形,查找整数,数列特征,字母图形,01字串,闰年判断,斐波那契数列,圆的面积 ...

  8. 蓝桥杯基础试题练习小结(vip)(二)

    试题 基础练习 矩形面积交 问题描述 平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴.对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积. 输入格式 输入仅包含两行, ...

  9. 蓝桥杯基础练习-数的读法

    蓝桥杯基础练习-数的读法 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学 ...

最新文章

  1. linux设备驱动第五篇:驱动中的并发与竟态
  2. ESLint 配置说明
  3. 谷歌Colab也搞“超级会员”,普通会员云GPU被降级,想用高端得加钱
  4. Python中的驻留机制:小数据池和代码块
  5. 用matlab 拟合实数解,求大神指点matlab用拟合的方式解延迟微分方程组参数
  6. 2 snippets vue 修改配置_VsCode从零开始配置一个属于自己的Vue开发环境
  7. Servlet(JSP)中动态生成JPG PNG透明 水印图像
  8. 赞!7000 字学习笔记,MySQL 从入到放弃
  9. PL-SLAM:通过点和线段组合的立体SLAM系统
  10. python进程/线程/协成
  11. mysql 列连接_计数mysql中的连接列
  12. vux安装时报vux-loader配置问题
  13. 【git新建分支拉取分支】git submodule update --init --recursive
  14. JQuery dad js自定义删除和拖动回调事件
  15. VYSOR-投屏软件
  16. 【locust】通过ip访问失败
  17. 小程序源码:全新圣诞节头像框制作生成
  18. Mcad学习笔记之通过反射调用類的方法,屬性,字段,索引器(2種方法)
  19. redis集群moved重定向与redis集群ask重定向
  20. Lesson 55 The Sawyer family

热门文章

  1. 吴恩达机器学习笔记39-误差分析与类偏斜的误差度量(Error Analysis and Error Metrics for Skewed Classes)...
  2. 盐雾试验箱的耐腐蚀ph酸碱度的三种配置方法
  3. 工单系统是什么?工单系统有什么功能?
  4. v3 572g 51mr 拆机加SSD和内存
  5. AcFunBiliBili竞品分析
  6. VScode配置LaTeX
  7. 【每日早报】2019/07/22
  8. 我和仙女们不可不说的故事-II
  9. 易语言c源码流程图怎么实现,基于易语言的弯管坐标转换加工程序研究
  10. nodejs 监控微信公众号关注事件推送