轨道
/
Python
Python
/
练习
/
电阻色环专家
电阻色环专家

电阻色环专家

简单

简介

如果你想用 Raspberry Pi 做点什么,多半会用到_电阻器_。 和之前的Resistor Color Duo、Resistor Color Trio练习一样,你需要把电阻的色环转换成人类可读的标签。

  • 每个电阻都有一个阻值。
  • 电阻很小,小到如果把阻值印在上面,会很难看清。 为了解决这个问题,制造商会把用颜色编码的色环印到电阻上,来表示它们的阻值。
  • 每个色环都相当于数字的一位。 例如,如果印上一个棕色色环(值为 1),后面跟着一个绿色色环(值为 5),表示的数字就是 15。

说明

在这个练习中,你将编写一个实用的小程序,这样就不必再记住各个色环的数值了。 程序接收 1 个、4 个或 5 个颜色作为输入,并以欧姆为单位输出正确的阻值。 色环的编码如下:

  • black:0
  • brown:1
  • red:2
  • orange:3
  • yellow:4
  • green:5
  • blue:6
  • violet:7
  • grey:8
  • white:9

在Resistor Color Trio中,你解码了前三个色环。 例如:orange-orange-brown 转换成主阻值330。 在这个练习中,你还需要把_容差_考虑进去。 容差是指阻值可以高于或低于主阻值的最大幅度。 例如,如果最后一个色环是 green,最大容差就是±0.5%。

容差色环的取值是以下之一:

  • grey - 0.05%
  • violet - 0.1%
  • blue - 0.25%
  • green - 0.5%
  • brown - 1%
  • red - 2%
  • gold - 5%
  • silver - 10%

四色环电阻的构成如下:

第 1 环 第 2 环 第 3 环 第 4 环
数值 1 数值 2 乘数 容差

示例:

  • orange-orange-brown-green 表示330欧姆,容差为±0.5%。
  • orange-orange-red-grey 表示3300欧姆,容差为±0.05%。

四色环电阻和五色环电阻的区别在于,五色环电阻多了一个色环,用来表示更精确的阻值。

第 1 环 第 2 环 第 3 环 第 4 环 第 5 环
数值 1 数值 2 数值 3 乘数 容差

示例:

  • orange-orange-orange-black-green 表示333欧姆,容差为±0.5%。
  • orange-red-orange-blue-violet 表示323 million欧姆,容差为±0.1%。

还有一种单色环电阻。 单色环电阻只有 black 一种颜色,数值为 0。

你的程序要把由电阻色环颜色组成的输入list转换成一个标签:

"... ohms ±...%"

所以当输入的list为["orange", "orange", "black", "green"]时,应返回:

"33 ohms ±0.5%"

当阻值达到数千欧姆时,我们说 "kiloohms"。 这就像把 1000 米说成 "kilometer",把 1000 克说成 "kilograms" 一样。

所以当输入的list为["orange", "orange", "orange", "grey"]时,应返回:

"33 kiloohms ±0.05%"

当阻值达到数百万欧姆时,我们说 "megaohms"。

所以当输入的list为["orange", "orange", "blue", "red"]时,应返回:

"33 megaohms ±2%"

通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Python Exercism

准备好开始 电阻色环专家 了吗?

注册 Exercism,借助 17 个概念146 个练习 和真人导师指导,学习并掌握 Python,全部免费。