gpt4 book ai didi

python - 分配给python中的不连续切片

转载 作者:行者123 更新时间:2023-11-28 20:52:37 35 4
gpt4 key购买 nike

在 Matlab 中我可以这样做:

s1 = 'abcdef'
s2 = 'uvwxyz'

s1(1:2:end) = s2(1:2:end)

s1 is now 'ubwdyf'

这只是一般的例子:

A(I) = B

其中 A、B 是向量,I 是一个索引向量,B 的长度与 I 相同。(我暂时忽略矩阵)。

Python 中一般情况的 pythonic 等价物是什么?最好它也应该在 jython/ironpython 上运行(没有 numpy)

编辑:我使用字符串作为一个简单的例子,但带有列表的解决方案(已经发布,哇)是我正在寻找的。谢谢。

最佳答案

>>> s1 = list('abcdef')
>>> s2 = list('uvwxyz')
>>> s1[0::2] = s2[0::2]
>>> s1
['u', 'b', 'w', 'd', 'y', 'f']
>>> ''.join(s1)
'ubwdyf'

主要区别是:

  • 字符串在 Python 中是不可变的。不过,您可以改用字符列表。
  • 索引在 Python 中是基于 0 的。
  • 切片语法是[start : stop : step],其中所有参数都是可选的。

关于python - 分配给python中的不连续切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6439076/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com