pythonlist初始化
1. 请问python中类的属性怎么初始化为一个列表
你的表述很有问题,问题本身便是错的。
列表与其他类型的数据一样,都可以作为实参传入类和函数,而python在定义形参的时候是不指定类型的,所以完全不知道你为何有此一问。
但不论如何,你可以参考以下代码。
class Student:
def __init__(self, name, age, scorelist): #构造函数,第一个参数为实例本身,按要求后接三个形参
self.name = name #属性:姓名
self.age = age #属性: 年龄
self.scorelist = scorelist #属性:成绩列表
def get_name(self):
return str(self.name)
def get_age(self):
return int(self.age)
def get_course(self):
return int(max(self.scorelist))
#self.scorelist便是传入的list实参,用max()函数取出最大值,再强制转换为int型。
zm = Student('zhangming',20,[69,88,100])
print(zm.get_name())
print(zm.get_age())
print(zm.get_course())
2. python怎么设置list的下标从1开始
因为在运行python脚本的时候你没在后面添加一个值。sys.argv[1]意思是取位置第二的参数。位置第一的是py名字,第二的参数你没有输入,所以取不到,所以报错out of range。
你执行的时候一般是这样的:python xxx.py A 其中xxx是程序名字,即sys.argv[0]的位置。A是参数,即sys.argv[1]取的位置。必须有这个A才行,要不然sys.argv[1]取不到值肯定报错
3. python的二维list问题
list 的 乘法是将里面的对象复制了一遍,并没有创建新的对象(object)。比方说
b = [1, 2, 3]
b 是一个 list 对象,如果
a = [b]*3
那么a就是一个包含三个 b 的列表,这个列表中的每一个对象都是b,所以你修改任意一个对象,实际都是在修改 b本身。用 id() 可以查看对象id,你可以发现a中的每一个元素都是同一个id
>>>b=[0,0,0]
>>>id(b)
47599855534232
>>>a=[b]*3
>>>a
[[0,0,0],[0,0,0],[0,0,0]]
>>>id(a)
47599860614424
>>>id(a[0])
47599855534232
>>>id(a[1])
47599855534232
>>>id(a[2])
47599855534232
>>>id(a[2])==id(b)
True
如果你想a中每一个元素都是不同的对象,可以用下面的代码:
a=[[0]*3foriinrange(3)]
4. python 基本语法小问题,列表list初始化下面两种小情况有什么不同呢
你好,对于list 的赋值方式可以是多样的,list1的赋值方式你可以看做是两个同样的列表[0]相加,list2的赋值则是利用for循环遍历的方式。从上图可以看出来,list1和list2的初始化值不一样。你题目中给的list2有语病的。这里主要提一下第二种的赋值方式,这种for循环加上range函数,是在列表有一定规律的情况下才能用的,无规律的列表元素,最好还是采用直接赋值的方法,例如:list=[0,1].
5. python中怎么在list中初始化一系列的相同类
提供思路
产生一个递增的list:
num_inc_list = range(30)
#will return a list [0,1,2,...,29]1212
产生一个固定初始值的list:
initial_value = 0
list_length = 5
sample_list = [ initial_value for i in range(10)]
sample_list = [initial_value]*list_length
# sample_list ==[0,0,0,0,0]
6. python高手求教,两个List怎么只改变一个List中元素的值不引起另一个List的变化
import
List2=.deep(List1)
这样赋值,List2初始值和List1一样,因为是深度复制List1中的元素,所有深层元素都引用的是不同的对象,List1的任何改变不会影响List2
7. python怎样创建具有一定长度和初始值的列表
1、首先,我们需要打开Python的shell工具,在shell当中新建一个对象member,对member进行赋值。
8. python里list的应用疑问
classSeat(object):
"""座位类
"""
def__init__(self):
"""初始状态为空置
"""
self._statu=0
defassign(self):
"""座位分配
"""
self._statu=1
defempty(self):
"""座位回收
"""
self._statu=0
defisempty(self):
"""判断座位是否可用
"""
returnself._statu==0
#初始化30个空座位列表
seatlist=[Seat()forxinrange(30)]
9. python中怎么初始化list
Python中,tuple和list均为内置类型, 以list作为参数将tuple类初始化,将返回tuple类型 tuple([1,2,3]) #list转换为tuple以tuple作为参数将list类初始化,将返回list类型 list((1,2,3)) #tuple转换为list
10. python中怎么在list中初始化一系列的相同类的对象
产生一个递增的list:
num_inc_list = range(30)
#will return a list [0,1,2,...,29]1212
产生一个固定初始值的list:
initial_value = 0
list_length = 5
sample_list = [ initial_value for i in range(10)]
sample_list = [initial_value]*list_length
# sample_list ==[0,0,0,0,0]