python定义list变量_Python定义变量listint应该怎样定义?如题。
如果定义⼀个list,当字符串⽤箱型梁
name=[h,e,l,l,o];
string=[];
for k in range(0,len(name)):
string[k]=name[k];
结果报错。
思念的古诗
跳绳可以练腹肌吗这样定义string为⼀个空list,再往string⾥赋值,不能进⾏。
string应该怎样定义可以执⾏for循环?
同样问题,
定义⼀个integer类型array,
inta=range(0,100);
有更动态的定义⽅法吗?
⽐如定义⼀个含100个元素的inta,每个元素初始赋值0,这个怎样定义?
我想定义⼀个10*10的matrix,给定matrix的size,
应该怎样定义?
冬则温你问的问题有些难回答,我怕我即使回答了你的问题,你也会有⼀些不明⽩的地⽅。“string应该怎样定义可以执⾏for循环?”这个是什么意思呢?
不过关于matrix的定义, 使⽤内置的list,可以这样做:def matrix(shape=(5, 5), default=0):
return [
[default for j in range(shape[0])]
窝窝团网>孕妇中暑for i in range(shape[1])
]
使⽤numpy:# 初始化值为0的长度为⼀百的数组
安陆市实验小学arr = np.zeros(100)
# ⼀个10x10的矩阵
matrix = np.zeros((10,10))
幸福的一家三口
单纯的loop ⼀个string:mystr = "hello, gfault!"
for mychar in mystr:
print mychar
你是想像c 那样的使⽤字符串麽?# 如果预先知道长度为length
mystr = ['' for _ in range(length)]
# 更改
mystr[3] = 's'
mystr[1] = 'c'
# 链接起来
final = ''.join(mystr)
# final: 'cs'
不能⽤下标赋值的原因是:Python⾥的字符串是immutable,即不可改变的, string[2] = 'l' 这种赋值语义是⽆论如何也不可能的。它不能像在C/C++⾥的字符串这样⽤,倒有点像Java的字符串。你每⼀次连接字符串,都进⾏了重复的拷贝,⾮常不好。要把这个列表转换成字符串Pythonic的⽅法是:string = name.join("")
# or append single-character string
# but low performamnce
for c in name: string += c
后⾯,⽣成10个0的列表可以这样定义:[0] * 10; 如此类推,10*10的矩阵,⽐如都是3,可以这样定义:[[3] * 10] * 10
string.append(value)
相关⽂章 Recommend