【Python123】练习1: Python基本语法元素 (第1周)
实例1: 温度转换
这是"实例"题,与课上讲解实例相同,请作答检验学习效果。
温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
- 输入输出的摄氏度可采用大小写字母C结尾,温度可以是整数或小数,如:12.34C指摄氏度12.34度;
- 输入输出的华氏度可采用大小写字母F结尾,温度可以是整数或小数,如:87.65F指华氏度87.65度;
- 输出保留小数点后两位,输入格式错误时,输出提示:输入格式错误;
- 使用input()获得测试用例输入时,不要增加提示字符串。
输入示例1
12.34C
输出示例1
54.21F
输入示例2
87.65F
输出示例2
54.21F
我的解答
t = input(); # 分号是错的
if t[-1] in ['F', 'f']:
c = ( eval(t[0:-1]) - 32 ) / 1.8
print("{:.2f}C".format(c))
elif t[-1] in ['C', 'c']:
f = eval(t[0:-1]) * 1.8 + 32
print("{:.2f}F".format(f))
else:
print("输入格式错误")
总结
- 第一句打了
分号
,Python不需要分号!!! - 不注意
缩进
导致代码逻辑错误 - 忘记将字符串转换为数值直接做运算,
eval()
print()
格式输出,把中间的小数点打成逗号- 还是
print()
,把C写到双引号外面 if
后面忘记加分号
温度转换 II
温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
- 输入输出的摄氏度采用大写字母C开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;
- 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指华氏度87.65度;
- 不考虑异常输入的问题,输出保留小数点后两位;
- 使用input()获得测试用例输入时,不要增加提示字符串。
输入示例1
C12.34
输出示例1
F54.21
输入示例2
F87.65
输出示例2
C30.92
我的解答
t = input()
if t[0] == 'F':
c = (eval(t[1:len(t)]) - 32) / 1.8
print("C{:.2f}".format(c))
elif t[0] == 'C':
f = eval(t[1:len(t)]) * 1.8 + 32
print("F{:.2f}".format(f))
总结
Python3字符串可以在分号内冒号来实现取部分,[1:]
表示从下标为1,即第二个元素开始,而[1:len(t)]
的冒号后面的标示到len(t)下标结束,但不包括这个下标,打印范围是[1,len-1]
标准答案中是没有len(),省略则表示一直打印到末尾
在下一段代码出现了这一个用法
money = input()
if money[0:3] == "RMB":
USD = eval(money[3:]) / 6.78
print("USD{:.2f}".format(USD))
elif money[0:3] == "USD":
RMB = eval(money[3:]) * 6.78
print("RMB{:.2f}".format(RMB))
【Python123】练习1: Python基本语法元素 (第1周)的更多相关文章
- Python123——测验1: Python基本语法元素 (第1周)程序题2总结
一.题目 二.解析 (1)官方解析 (2)个人解析 def m1(): """ 法1:暴力破解""" s1 = input('') s2 = ...
- 003 Python基本语法元素
目录 一.概要 1.1 方法论 1.2 实践能力 一.概要 程序设计基本方法:https://www.cnblogs.com/nickchen121/p/11164043.html Python开发环 ...
- 第二章 python基本语法元素
python有两种编程方式,交互式和文件式. 交互式:对每个输入语句即时运行结果------适合语法练习 文件式:批量执行一组语句并运行结果------编程的主要方式 实例1:圆面积的计算(根据半径r ...
- 第一章 Python基本语法元素
1.1 程序设计基本方法 计算机的概念: (1)功能性:对数据的操作,表现为数据计算.输出输出处理和结果存储等 (2)可编程性:根据一系列指令自动地.可预测地.准确地完成操作者的意图. 计算机的发 ...
- Python基本语法元素
静态语言(C/C++.Java):脚本语言(python.JavaScript.PHP) IPO(Input.Process.Output) #:python中的注释符号:''' ''':多 ...
- 《Python语言程序设计》【第1周】Python基本语法元素
实例:温度转化 #TempConvert.py 单行注释 ''' TemConvert.py ''' # 多行注释 TempStr = input("请输入带有符号的温度值: ") ...
- 一、python基本语法元素(温度转换)
#C=(F-32)/1.8 ; F = C * 1.8 + 32 TempStr = input("请输入带有符号的温度值:") if TempStr[-1] in ['f','F ...
- 008 Python基本语法元素小结
目录 一.概要 二.保留字 三.温度转换 一.概要 缩进.注释.命名.变量.保留字 数据类型.字符串. 整数.浮点数.列表 赋值语句.分支语句.函数 input().print().eval(). p ...
- python学习笔记(11)--测验3: Python基础语法(下) (第7周)
斐波那契数列计算 B 描述 斐波那契数列如下: F(0) = 0, F(1) = 1 F(n) = F(n-1) + F(n-2) 编写一个计算斐波那契数列的函数,采用递归方式,输出不超过n的所有斐波 ...
随机推荐
- Qt5获取系统文件图标,文件路径
获取系统图标: QFileIconProvider icon_provider; QIcon icon = icon_provider.icon(QFileIconProvider::Folder); ...
- 从零开始实现简单 RPC 框架 7:网络通信之自定义协议(粘包拆包、编解码)
当 RPC 框架使用 Netty 通信时,实际上是将数据转化成 ByteBuf 的方式进行传输. 那如何转化呢?可不可以把 请求参数 或者 响应结果 直接无脑序列化成 byte 数组发出去? 答:直接 ...
- RabbitMQ之消息模式2
消费端限流 什么是消费端的限流? 假设一个场景,首先,我们RabbitMQ服务器有上万条未处理的消息,我们随便打开一个消费者客户端,会出现下面情况: 巨量的消息瞬间全部推送过来,但是我们单个客户端无法 ...
- Vite详解
vite 目录 一.推荐两个插件插件 Volar Vue 3 Snippets 二.vite简介 优势分析 浏览器支持 三.vite搭建vue3.x项目 1.创建项目 2.集成Vue-Router 3 ...
- 关联数组VS索引数组
关联数组和常规说的数组类似,它包含标量抄数据,可用索引值来单独选择这些数据,和常规数组不同的是, 关联数组的索引值不是非负的整数而是任意的标量袭.这些标量称为百Keys,可以在以后用于检索数组中的数值 ...
- ☕【Java技术指南】「并发编程专题」针对于Guava RateLimiter限流器的入门到精通(含实战开发技巧)
并发编程的三剑客 在开发高并发系统时有三剑客:缓存.降级和限流. 缓存 缓存的目的是提升系统访问速度和增大系统处理容量. 降级 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题 ...
- Elasticsearch(ES)的高级搜索(DSL搜索)(下篇)
1. 概述 之前聊了Elasticsearch(ES)的高级搜索(DSL搜索)的一部分内容,今天把剩下的部分聊完. 2. 场景说明 2.1 创建索引同时创建映射 PUT http://192.168 ...
- Elaticsearch倒排索引
ES倒排索引基本原理 索引(index)可以分为正序索引(Forward Indexes)和倒排索引(Inverted Index)两种.在关系型数据库中使用索引可以避免数据检索走全表扫描,将检索的时 ...
- 【PHP数据结构】线性表?顺序表?链表?别再傻傻分不清楚
遵从所有教材以及各类数据结构相关的书书籍,我们先从线性表开始入门.今天这篇文章更偏概念,是关于有线性表的一个知识点的汇总. 上文说过,物理结构是用于确定数据以何种方式存储的.其他的数据结构(树.图). ...
- PHP中的输出:echo、print、printf、sprintf、print_r和var_dump
大家在面试中,经常会被问到的问题: 请简要说明PHP的打印方式都有哪些? 或者直接点问: 请说明echo.print.print_r的区别 看着很简单,一般会出现在初中级的笔试题中.但是要真正说明白这 ...