
第五次作业
为什么要用列表分割呢,在输入数据的时候,Python会一次性将一行的数据均输入进来。但是,如果在输入时一行有多个数据时,就很难将数据一次性的转换成为所需要的数值。我们要输入的数据逐渐的变多,每输一个数字都要按一次回车,非常的麻烦,所以我们要一次输入完所有的数据,然后一个回车解决
使用方法
split与单词的含义一样,分割。即以某种字符为分隔符,将一个字符串分割为若干部分
通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
这个没有什么好讲的,具体请看示例:
1 |
string = input("请输入几个数字,用空格分开") |
这段代码使用的方法是输入三个数,中间要加空格,例如【67 17 78】,具体运行示例如下:

这里面,给a的赋值是这个列表里面的数,如实例之中的显示效果:在[]中呈现了若干个字符串。这种存储形式,在Python中称之为列表,对列表,可以有很多种操作。其中最基础的就是遍历(也就是访问)。
这里面注意,在string.split(“ “)里,引号里面的是空格,一定要打,str:表示为分隔符,默认为空格,但是不能为空(‘’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
例如:s.split(‘’)是不能运行的
但其中的空格也可以换成别的符号,例如string.split(“.”)代码运行示例:

在数字后面输入【.】在后面就会被自动替换出来
类型转换
在这里,[]中的第一个内容称为第0个内容;第二个内容称之为第1个内容……依次编号。可以用a[0]、a[1]……进行访问,也可以直接用于转换
使用方法:
1 |
shu1 = a[0] |
因为计算机计数的顺序是从0开始的,所以要提取第一位数要输入0
家庭作业
题目解析
请在同一行输入三个整数,用分割函数,将它分成三个部分,再对每个部分进行转换成为整数。最后计算这三个整数的和,并输出。
举个例子,当你输入【10 20 30】,把这个转换成列表形式,然后把这三个数加起来,即结果为60
第一步:输入数据和转化数据
使用input输入三个数,使用split转化为列表形式
1 |
a = input('请输入三个数:') |
第二步:数据提取
从列表「i」里提取第一、第二、第三个数,并要把它们转化为整数,方便后面的计算
1 |
j = int(i[0]) |
第三步:加法计算
把三个数加起来就是了,别忘了输出
1 |
m = j + k + l |
代码示例
1 |
a = input('请输入三个数:') |
部分代码解释
4、5、6行的int为整数的转化,这一步可以不加,但后面要加。如果你不想加的话,后面的圆括号可以不要
额外作业
时间秒数转换
题目解析
给定一个时间:10:20:30,计算出,共有多少秒
这里要先吧时间提取出来,10小时,20分钟,30秒,然后要全部转换成秒钟,小时要乘以3600,因为60✖️60即60秒乘60分钟等于3600秒,分钟乘以60,因为一分钟有60秒,秒钟就不用乘了
第一步:输入与分割
输入一个时间,格式为10:20:30这样的,即10小时20分钟30秒,这里需要注意:输入的时间中间使用冒号分割的,所以要以冒号作为列表的分割,即「:」
1 |
a = input("请输入一个时间(格式00:00:00):") |
第二步:秒钟计算
前面我说过,小时和分钟各乘以多少,这里直接提取然后乘法计算就行了,最后还要把这些秒钟加在一起,这里注意:运算需要将提取的数转化为整数才可以进行
1 |
c = int(b[0]) * 3600 |
第三步:输出
1 |
print('时间共:' + str(f) + '秒') |
代码示例
1 |
a = input("请输入一个时间(格式00:00:00):") #输入一个时间的大小,要使用英文输入 |
时间相差
题目解析
再给定一个时间:09:30:01,计算出,两个时间之间差多少秒
这里需要输入两个时间(一个大一个小),两个相减算出相差的秒数
第一步:输入时间并转化为列表
第一个较小的时间和第二个较大的时间,提取记得以冒号来提取
1 |
a = input("请输入第一个时间(小):") |
第二步:提取+数据的计算
小时还是乘以3600,分钟乘以60,全部转换为秒,拿第二个时间减去第一个时间
1 |
e = int(c[0]) * 3600 |
第三步:输出
1 |
print('一共相差:' + str(m) + '秒') |
代码示例
1 |
a = input("请输入第一个时间(小):") #输入第一个小的时间,要使用英文输入 |
文章作者:朱海天 未经允许禁止转载




近期评论