目录

1.输入圆半径计算周长和面积

2.判断输入年份是否为闰年

3.英寸和厘米的转换

4.写在最后


 1.输入圆半径计算周长和面积

# 输入圆半径计算周长和面积
radius = float(input('请输入圆的半径:'))
perimeter = 2 * 3.1416 * radius
area = 3.1416 * radius *radius
print('周长:%.2f' %perimeter)
print('面积:%.2f' %area)

计算圆周长和面积的公式,但凡上过小学的应该都会吧。

首先,我们要输入半径。有人会问直接用input语句输入不就行了吗?为什么还要用float进行类型转换呢?

来,我们看下没有类型转换的情况下,程序的运行结果。

请输入圆的半径:2
Traceback (most recent call last):

  File "E:\Algorithm\game.py", line 3, in <module>
    perimeter = 2 * 3.1416 * radius

TypeError: can't multiply sequence by non-int of type 'float'

为什么会出现这种情况呢?

原因如下:我们使用input()函数输入的是字符串格式,所以看似我们从键盘输入的是整数。其实并不是整数,而是字符串格式。所以在执行时会报类型错误。因为我们输入的radius是字符串形式,不可以相乘。

perimeter = 2 * 3.1416 * radius
area = 3.1416 * radius *radius

这两行相当于把求周长和面积的数学公式用代码进行实现,非常直观,没有问题吧。

print('周长:%.2f' %perimeter)
print('面积:%.2f' %area)

最后将周长和面积进行输出。注意:%.2f是占位符,额,应该可以这么认为吧。即,用一个精确度到小数点后两位的浮点数符号先站在这个位置上,然后用%perimeter和%area再进行替代。当然,换成别的精确度也可以。

# 运行结果,以radius = 8 为例
请输入圆的半径:8
周长:50.27
面积:201.06

2.判断输入年份是否为闰年

# 判断输入年份是否是闰年
year = int(input('请输入年份: '))
is_leap = year % 4 == 0 and year % 100 !=0 or year % 400 == 0
print(is_leap)

只要你知道该如何去判断一个年份是否为闰年,应该就能明白这段代码,所以小新在此不再赘述。

3.英寸和厘米的转换

value = float(input('请输入长度: '))
unit  = input('请输入单位: ')
if unit == 'in' or unit == '英寸':
    print('%f英寸 = %f厘米' %(value, value * 2.54))
elif unit == 'cm' or unit == '厘米':
    print('%f厘米 = %f英寸' %(value, value / 2.54))
else:
    print('请输入有效的单位')

这段代码是我练习分支结构,也就是循环结构的时候用的示例。主要是为了体会if...elif...else的那种感觉,唉,对,就是为了体验下那种感觉。

if unit == 'in' or unit == '英寸':

小新想提醒的是这里的==比较运算符。因为平时读的时候总是把它读成等于(等号),所以经常敲错。希望大家在敲代码时,心中默念“如果unit 为 in”诸如此类,将它和赋值运算符=区分开就行。

4.写在最后

小新是一名学生,理应以学业为重。但是周围影响因素太多,注意力总是被分到别的地方去,难以集中精力学知识、做学问,实在是羞愧。