python一维列表的定义,Python定义变量list int应该怎样定义?,pythonlist,如题。如果定义一个lis...

Python定义变量list int应该怎样定义?,pythonlist,如题。如果定义一个lis

如题。

如果定义一个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, segfault!"for mychar in mystr: print mychar

你是想像c 那样的使用字符串麽?# 如果预先知道长度为lengthmystr = ['' 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 performamncefor c in name: string += c

后面,生成10个0的列表可以这样定义:[0] * 10; 如此类推,10*10的矩阵,比如都是3,可以这样定义:[[3] * 10] * 10

string.append(value)

编橙之家文章,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值