Python求解,,怎样求出元组中的各元素之和?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python求解,,怎样求出元组中的各元素之和?相关的知识,希望对你有一定的参考价值。
有以下元组: t1=(33,42,80,78,23)
(1)求出元组中的各元素之和。
(2)输出元组内7的倍数及含7的数
(3)输出元组内奇偶数各有多少个。
(4)输出元组内最大值和最小值及其下标
第二个稍有点麻烦,或者用正则表达式来做比较简单,但要会正则表达式才行,别的有需要再发
参考技术A 参考技术B (一)t1 = (33, 42, 80, 78, 23)
result = 0
for i in t1:
result = result + i
print(result)
(二)
t1 = (33, 42, 80, 78, 23)
for i in t1:
if i % 7 == 0:
print(i)
elif "7" in str(i):
print(i)
(三)
t1 = (33, 42, 80, 78, 23)
even = 0
odd = 0
for i in t1:
if i % 2 != 0:
odd += 1
else:
even += 1
print("偶数个数为:"+str(even)+",奇数个数为:"+str(odd))
(四)
t1 = (33, 42, 80, 78, 23)
print("最大值为:" + str(max(t1))+",其索引为:"+str(t1.index(max(t1))))
print("最小值为:" + str(min(t1))+",其索引为:"+str(t1.index(min(t1))))
我用的Python3,如果是python2, print语句不加括号
python数据结构-如何为元组中的每个元素命名
如何为元组中的每个元素命名
简述
当对象数据格式固定时,用元组比列表更节省内存空间,
我们使用索引访问元组元素,但是这种访问方式会降低程序的可读性。
举个栗子
对于学生的信息,我们有固定的数据格式,我们可以用元组表示,
但是在我们使用它的时候并不知道stu1[1],stu[2]具体代表什么信息,
这就大大降低了程序的可读性
stu1 = ("tom", 16, "male") def fun1(stu): if stu1[1]: pass if stu1[2] == ‘male‘: pass fun1(stu1)
那我们怎么提高程序的可读性呢,解决方法如下
定义一系列数值常量或枚举类型
定义一系列数值常量
NAME = 0 AGE = 1 SEX = 2 stu1 = ("tom", 16, "male") def fun1(stu): if stu1[NAME]: pass if stu1[SEX] == ‘male‘: pass fun1(stu1)
分析:但是这种方式比较低效,我们可以采用元组的拆包
NAME, AGE, SEX = range(3) stu1 = ("tom", 16, "male") def fun1(stu): if stu1[NAME]: pass if stu1[SEX] == ‘male‘: pass fun1(stu1)
分析:如果还有一个老师的数据结构,元组的第一项是年龄,第二项是姓名,
如果在程序中有多种数据结构,还使用定义常量的方式,有些常量会冲突,
如果分开对象去定义常量,如STU_NAME, TEA_NAME, STU_AGE, TEA_AGE,这样全局变量太多
一般这种情况我们会使用枚举
枚举
优点:相当于创造了一个名称空间
from enum import IntEnum class StudentEnum(IntEnum): NAME = 0 AGE = 1 SEX = 2 stu1 = ("tom", 16, "male") print(StudentEnum.NAME == 0) #True print(StudentEnum.AGE == 1) #True print(isinstance(StudentEnum.NAME, int)) #True
使用标准库中的collections.namedtuple代替内置tuple
优点:
使用元组可以节省空间
提升程序可读性
from collections import namedtuple Student = namedtuple(‘Student‘, [‘name‘, ‘age‘, ‘sex‘]) stu1 = Student("tom", 16, "male") print(isinstance(stu1, tuple)) #True print(stu1.name) #“tom” print(stu1.age) #16
以上是关于Python求解,,怎样求出元组中的各元素之和?的主要内容,如果未能解决你的问题,请参考以下文章