Python:程序练习题(二)
Python:程序练习题(二)
2.1温度转换程序。
代码如下:
t=input("请输入带符号的温度值(如:32C):")
if t[-1] in ["C","c"]:
f=1.8*float(t[0:-1])+32
print("转换后的温度为:%.0fF"%f)
elif t[-1] in ["F","f"]:
c=(float(t[0:-1])-32)/1.8
print("转换后的温度为:%.0fC"%c)
else:
print("输入错误!")
知识点整理:
1.t[-1]表示取输入值的倒数第一个元素,此处是取最后一个字符(C/c/F/f)。
2.t[0:-1]表示第一个元素到倒数第二个元素的切片,简单的说,就是表示除最后一个字符以外的字符串。
3.%.0f表示取整,%f指输出变量f。
运行结果:



上面可以看到,只输入数字会显示错误,而只输入符号会怎么样呢?让我们试着输入一个符号,结果显示如下。

出错的原因是无法将字符型变量转换为浮点型float,因此无法进行计算。
现修改实例2.1,采用eval(input(<提示内容>))替换现有输入部分,并使输出的温度值为整数。
代码如下:
t = eval(input('请输入温度值(无单位):'))
d = input('请输入单位:')
if d in ['f', 'F']:
c = (t - 32)/1.8
print('转换后的温度为:{:.0f}C'.format(c))
elif d in ['c', 'C']:
f = 1.8*t + 32
print('转换后的温度为:{:.0f}F'.format(f))
else:
print('输入错误!')
运行结果:

2.2汇率兑换程序。按照温度转换程序的设计思路,按照1美元=6人民币汇率编写一个美元和人民币的双向兑换程序。
代码如下:
t=input("请输入带单位的金钱数(如30¥):")
if t[-1] in ["¥"]:
m=eval(t[:-1])/6
print("兑换后为:{:.2f}$".format(m))
elif t[-1] in ["$"]:
r=6*eval(t[:-1])
print("兑换后为:{:.2f}¥".format(r))
else:
print("输入错误!")
知识点整理:
1.eval(<字符串>)函数能够以Python表达式的方式解析并执行字符串,并将返回结果输出。
2.Python语言中,字符串通过format()方法进行格式化处理。
format方法的基本使用格式如下:
<字符串>.format(<逗号分隔的参数>)
print("{}".format(m)),其中{}输出的是m的值。
运行结果:


4.4猜数游戏。
代码如下:
import random w=0#定义w并初始化
p=random.randint(0,100)
N=0 while w!=p: N+=1 #这句不能单独拿出while循环外,否则会无限循环
w=int(input('请输入一个0-100之间的整数:')) if w>p:
print('遗憾,太大了!')
elif w<p:
print('遗憾,太小了!')
else:
print('预测'+str(N)+'次,你猜中了!')
break
知识点整理:
1.random库采用梅森旋转算法生成伪随机数序列,提供了不同类型的随机数函数,所有函数都是基于最基本的random.random()函数扩展实现。
2.randint(a,b)是random库的常用函数之一,用于生成一个[a,b]之间的整数。
3.str(N)是将N的数据类型转换为String类型,因为python拼接字符串比较特殊,无法自动转换数据类型。
4.break用来跳出最内层for或while循环,脱离该循环后程序从循环代码后继续执行。
运行结果:

Python:程序练习题(二)的更多相关文章
- python/MySQL练习题(二)
python/MySQL练习题(二) 查询各科成绩前三名的记录:(不考虑成绩并列情况) select score.sid,score.course_id,score.num,T.first_num,T ...
- Python程序练习题(一)
Python:程序练习题(一) 1.2 整数序列求和.用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果. 代码如下: n=input("请输入整数N:") sum=0 ...
- python 程序练习题
1.实现isOdd(),参数为整数,如果整数为奇数,返回True,否则返回Flase 代码如下: def isOdd(a): if a%2==0: return False else: return ...
- 编写高质量代码–改善python程序的建议(二)
原文发表在我的博客主页,转载请注明出处! 建议七:利用assert语句来发现问题断言(assert)在很多语言中都存在,它主要为调试程序服务,能够快速方便地检查程序的异常或者发现不恰当的输入等,可防止 ...
- Python学习笔记(二)使用Sublime Text编写简单的Python程序()
一.使用Sublime Text编写Python 1.点击“文件” →”新建文件“ 2.点击”文件“→”保存“,并保存为.py文件 此时已经创建好Python文件了,接下来就可以编写Python程序了 ...
- python基础(二)---第一个程序
1. 第一个程序 1.1 Hello Python书写步骤 步骤一:新建文本文档文件,修改名称为hello.py 步骤二:使用记事本打开文件,书写程序内容如下: 步骤三:打开命令行,输入执行指令:py ...
- Jenkins简明入门(二) -- 利用Jenkins完成Python程序的build、test、deployment
大家可能还没搞清楚,Jenkins到底能做什么? 本节内容利用Jenkins完成python程序的build.test.deployment,让大家对Jenkins能做的事情有一个直观的了解. 本节内 ...
- 用Python开发小学二年级口算自动出题程序
版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 武汉光谷一小二年级要求家长每天要给小孩出口算题目,让孩子练习. 根据老师出题要求编写了Python程序 ...
- 用python + hadoop streaming 编写分布式程序(二) -- 在集群上运行与监控
写在前面 相关随笔: Hadoop-1.0.4集群搭建笔记 用python + hadoop streaming 编写分布式程序(一) -- 原理介绍,样例程序与本地调试 用python + hado ...
随机推荐
- CSS入门(定位之浮动定位、伪类之鼠标悬停、光标修改和透明度修改和列表样式)
一.定位 所为定位,实际上就是定义元素框相对于其正常位置,应该出现在哪儿 定位就是改变元素在页面上的默认位置 分类: 普通流定位(元素默认的定位方式) 浮动定位 相对定位 绝对定位 固定定位 1.普通 ...
- AlertDialog创建对话框的测试
AlertDialog的功能是非常强大的,它可以创建各种对话框,它的结构分为:图标区.标题区.内容区.按钮区共四个区域.以这样的思路区创建AlertDialog是非常简单的. 创建AlertDialo ...
- 给spark submit main传递参数
https://www.jianshu.com/p/1d41174441b6 注意传递过去的默认是string,如果修改只能在代码中修改
- Saltstack_使用指南09_远程执行-编写执行模块
1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --versi ...
- MySQL优化/面试,看这一篇就够了
原文链接:http://www.zhenganwen.top/articles/2018/12/25/1565048860202.html 作者:Anwen~链接:https://www.nowcod ...
- ORM映射(对象关系映射)
ORM映射(对象关系映射)分创建表和操作表两个部分创建单表创建关联表(foreignKey) 一对一 一对多(重点) 多对多(重点) 创建表后加str方法把打印的地址转换成对应字符表的操作(增删改查) ...
- 生成对抗性网络GAN
同VAE模型类似,GAN模型也包含了一对子模型.GAN的名字中包含一个对抗的概念,为了体现对抗这个概念,除了生成模型,其中还有另外一个模型帮助生成模型更好地学习观测数据的条件分布.这个模型可以称作判别 ...
- acwing 850. Dijkstra求最短路 II 模板
地址 https://www.acwing.com/problem/content/description/852/ 给定一个n个点m条边的有向图,图中可能存在重边和自环,所有边权均为非负值. 请你求 ...
- (day65、66)Vue基础、指令、实例成员、JS函数this补充、冒泡排序
目录 一.Vue基础 (一)什么是Vue (二)为什么学习Vue (三)如何使用Vue 二.Vue指令 (一)文本指令 (二)事件指令v-on (三)属性指令v-bind (四)表单指令v-model ...
- 埃氏筛法(求n以内有哪些个质数)
核心思想:从i=2开始,划去i的倍数,即剩下i为质数(如删去2的倍数后2为质数,再删去3的倍数后3为质数,4被删除则跳过,5未被删除则记录然后删除5的倍数...以此类推) #include <b ...