Python:程序练习题
Posted 圈er
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 matplotlib 基础练习:画出正弦曲线等
我在哪里更改此 Python 代码片段以将临时文件保存在 tmp 文件夹中?
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段