欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python Road(1)

程序员文章站 2022-03-26 13:25:28
2020.07.20...

首先我们来看一段温度转换代码:

#TempConvert.py
tempstr = input("请输入带有符号的温度值")
if tempstr[-1] in ['c','C']: #判断某个字符是否在列表中需要用 in 而不是 ==
	F = 1.8*eval(tempstr[0:-1])+32#不包括最后一个字符(字符串切片的左闭右开原则)
	print("转换后的温度为{:.2f}F".format(F))
elif tempstr[-1] in ['f','F']:#字符用“”或‘’都可以
	C =(eval(tempstr[0:-1]-32)/1.8
	print("转换后的温度为{:.2f}C".format(C))
else:
	print("输入格式有误")
	

我认为它的知识点有以下几部分:

  • eval函数
  • for in 循环
  • 字符串简易操作

eval函数

eval函数作用:去掉最外侧括号执行余下语句

#牢记是去掉括号
>>>eval("123")#①
>>>eval("1+2")#②

①的输出为123(这实现了将字符串转换成数字)
②的输出为3(实现了将字符串转算式)

思考:如何直接获取数字?

n = eval(input())

for in 循环

例如 for c in s:(别忘了:)
可以把c当做空房子,随着循环一次次执行,s中的字符一个个进入c中(赋值给c)

s = "123"
for c in s:
	print(c)
#输出为
#“1”
#“2”
#“3”

注意:每打印一次便换行一次,如果想不换行,可以使用end=“”的方法
(不知道为什么python中的多行注释/**/在这里没有效果,所以采用了很多单行注释的方法…其实在python中可以直接用引号将需要注释的代码段括起来,使之变成字符串但不进行任何操作,一样可以达到注释的效果。)

#例题:输入1234转化为一二三四,输入312转化为三一二
template = "一二三四"
s = input()
for c in s:
	print(template[eval(c)-1],end ="")

拓展:如何将一个单词的每个字母垂直输出?

for c in "world"print(c)

字符串简易操作

!!一定要把字符串和列表区分开
①字符串的正向反向编号:

0    1    2    3#正向编号
A    B    C    D
-4   -3   -2   -1#反向编号

②字符串的切片操作:
左闭右开原则
c = s[0:-1](获得新的字符串c,c不包括s的最后一个字符)
可空原则
c = s[0:](获得新的字符串c,c即是复制s)

#若在前面温度转换问题中将符号提前如:C12.34  F54.21 如何取值?
eval(tempstr[1:])

本文地址:https://blog.csdn.net/Douqiyuan/article/details/107469364

相关标签: 自学 python