amy

python基础教程:Python实现动态给类和对象添加属性和方法操作示例

夙愿已清 提交于 2020-03-10 01:36:24
本文实例讲述了Python实现动态给类和对象添加属性和方法操作。分享给大家供大家参考,具体如下: 动态给类和对象添加属性 定义一个Person类 class Person ( object ) : def __init__ ( self, name ) : self.name = name 给对象添加属性 # 创建2个Person,分别为p1,p2 p1 = Person ( 'amy' ) print ( p1.name ) p1.age = 10 # 给p1对象添加属性 print ( p1.age ) # 输出10 p2 = Person ( 'anne' ) print ( p2.name ) p2.age = 18 # 给p2对象添加属性 print ( p2.age ) # 输出18 运行结果: amy 10 anne 18 给类添加属性 p1 = Person ( 'amy' ) p2 = Person ( 'anne' ) Person.sex = 'female' print ( p1.sex ) # 输出 female print ( p2.sex ) # 输出 female p2.sex = 'male' print ( p2.sex ) # 输出 male 运行结果: female female male 动态给类和对象添加方法 动态给类添加方法 #

python数据类型之列表

妖精的绣舞 提交于 2020-01-01 13:06:59
列表定义 列表是由一系列案特定顺序排列的元素组成。在python中,用方括号([])来表示,并用逗号来分隔其中的元素。 names = ['Alex',"Tenglan",'Eric'] 列表访问 列表元素的访问从索引0开始,而不是索引1开始。 列表的索引可以是从负数开始。这种语法经常在需要在不知道列表长度的情况下访问元素。 >> names[0] 'Alex' >>> names[2] 'Eric' >>> names[-1] 'Eric' >>> names[-2] #还可以倒着取 'Tenglan' View Code 列表操作 修改列表元素 >>> names ['Alex', 'Tenglan', '强行从Eric前面插入', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的'] >>> names[2] = "该换人了" >>> names ['Alex', 'Tenglan', '该换人了', 'Eric', 'Rain', '从eric后面插入试试新姿势', 'Tom', 'Amy', '我是新来的'] View Code 添加列表元素 从列表末尾添加,利用append方法。 >>> names ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy'] >>>

TypeError: list indices must be integers or slices, not tuple while doing some calculation in a nested list

匿名 (未验证) 提交于 2019-12-03 01:39:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I am trying to do some calculation in nested lists The example is [['Amy',2,3,4],['Jack',3,4,None]] , and I want to see the output like: [[3.0,'Amy'],[3.5,'Jack']] (3.0 is mean of 2,3,4 and 3.5 is mean of 3,4) My code: def compute_mean_pc(): students_pclist=[['Amy',2,3,4],['Jack',3,4,None]] mean_pc=[[[countMean(students_pclist[element][1:])]for element in enumerate(students_pclist)]+[element[0]]for element in students_pclist] print(mean_pc) def countMean(array): count=0 sumup=0 for i in range(len(array)): if array[i]!=None: count+=1 sumup+