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:程序练习题(二)的更多相关文章

  1. python/MySQL练习题(二)

    python/MySQL练习题(二) 查询各科成绩前三名的记录:(不考虑成绩并列情况) select score.sid,score.course_id,score.num,T.first_num,T ...

  2. Python程序练习题(一)

    Python:程序练习题(一) 1.2 整数序列求和.用户输入一个正整数N,计算从1到N(包含1和N)相加之后的结果. 代码如下: n=input("请输入整数N:") sum=0 ...

  3. python 程序练习题

    1.实现isOdd(),参数为整数,如果整数为奇数,返回True,否则返回Flase 代码如下: def isOdd(a): if a%2==0: return False else: return ...

  4. 编写高质量代码–改善python程序的建议(二)

    原文发表在我的博客主页,转载请注明出处! 建议七:利用assert语句来发现问题断言(assert)在很多语言中都存在,它主要为调试程序服务,能够快速方便地检查程序的异常或者发现不恰当的输入等,可防止 ...

  5. Python学习笔记(二)使用Sublime Text编写简单的Python程序()

    一.使用Sublime Text编写Python 1.点击“文件” →”新建文件“ 2.点击”文件“→”保存“,并保存为.py文件 此时已经创建好Python文件了,接下来就可以编写Python程序了 ...

  6. python基础(二)---第一个程序

    1. 第一个程序 1.1 Hello Python书写步骤 步骤一:新建文本文档文件,修改名称为hello.py 步骤二:使用记事本打开文件,书写程序内容如下: 步骤三:打开命令行,输入执行指令:py ...

  7. Jenkins简明入门(二) -- 利用Jenkins完成Python程序的build、test、deployment

    大家可能还没搞清楚,Jenkins到底能做什么? 本节内容利用Jenkins完成python程序的build.test.deployment,让大家对Jenkins能做的事情有一个直观的了解. 本节内 ...

  8. 用Python开发小学二年级口算自动出题程序

    版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 武汉光谷一小二年级要求家长每天要给小孩出口算题目,让孩子练习. 根据老师出题要求编写了Python程序 ...

  9. 用python + hadoop streaming 编写分布式程序(二) -- 在集群上运行与监控

    写在前面 相关随笔: Hadoop-1.0.4集群搭建笔记 用python + hadoop streaming 编写分布式程序(一) -- 原理介绍,样例程序与本地调试 用python + hado ...

随机推荐

  1. Entity Framework Core Code First 项目实践

    Entity Framework Core Code First 实践 任何一种技术的出现都是为了解决一系列特定的问题,只有了解了技术所要解决的关键问题,才能理解它的真正用途,之后,才能在实践中用好它 ...

  2. Geodesic 什么是“测地线的”?

    确定是使用上椭球体(测地线)还是平地上(平面)的最短路径.强烈建议将 Geodesic 方法用于在不适合进行距离测量的坐标系(例如 Web 墨卡托或任何地理坐标系)中存储的数据,以及任何地理区域跨度较 ...

  3. 记,NSProxy需要实现哪些方法?

    转注出:https://www.cnblogs.com/xiaobajiu/p/10799962.html 使用NSProxy做替身,代理,多继承,本质上都是用它来转发消息给真身. 观察头文件,NSP ...

  4. [PHP] Workerman中的注册树模式

    注册树模式是把对象挂到一个类的属性数组里,下次直接在这个数组里面取,保持全局唯一,一般在项目入口初始化的时候有用到.在workerman中一开始的就是个注册树模式的运用,下面是对他的模拟 <?p ...

  5. 项目如何部署在linux系统上

    前面已经安装好centos的系统,网络配置,以及部署的环境已成功啦... 下面记录的是如何部署一个项目 四个步骤: (1)放war包 (2)执行数据库脚本 (3)修改数据库的配置文件 (4)重启tom ...

  6. Python-类的几种调用方法

    一:实例 二:静态 可以调用类以外的变量,只限于此模块. 三:类方法 可以调用该类中定义的变量进行使用. 直接上代码

  7. Java面试题和解答(五)

    1.在Java中Executor和Executors的区别? Executor是线程池的顶层接口,它的实现类如下图所示: Executors是一个类,提供了多个静态方法,用于生成不同类型的线程池,如下 ...

  8. java之包装类

    针对八种基本数据类型定义相应的引用类型--包装类: 有了类的特点,接可以调用类中的方法: 基本数据类型 包装类 boolean Bollean byte Byte short Short int In ...

  9. angularjs link compile与controller的区别详解,了解angular生命周期

     壹 ❀ 引 我在 angularjs 一篇文章看懂自定义指令directive 一文中简单提及了自定义指令中的link链接函数与compile编译函数,并说到两者具有互斥特性,即同时存在link与c ...

  10. maven修改运行环境配置

    maven中自带的tomcat是6版本,比如我们想用tomcat7,jdk1.8,我们就要通过配置来改变. 改变方式如下 <build> <plugins> <plugi ...