作者mymail (从心开始)
看板Python
标题[问题] 超新手 矩阵数字任意交换
时间Tue Apr 21 14:43:31 2020
各位前辈好
目前正在初学Python,碰到一个问题想跟大家请教
是如何想把以下这几组array数字做任意变动
刚才打错,修正问题抱歉
例如:
原始array有三笔(让Python吃原始资料ok,一个array 6笔数据)
Array1=[1,2,3,4,5,6]
Array2=[7,8,9,10,11,12]
Array3=[13,14,15,16,17,18]
但我希望能利用Python在这三笔数据能产生以下之类的array出来(目前卡关)
Array4=[1,2,3,10,11,12] -->Array 1&2 局部互换
Array5=[7,8,9,4,5,6] -->Array 1&2 局部互换
Array6=[13,2,3,16,17,18] -->Array 1&3 局部互换
目前我有参考以下的文章
array交换
https://www.geeksforgeeks.org/python-program-to-swap-two-elements-in-a-list/
基因演算法
https://ithelp.ithome.com.tw/articles/10211706
单点多点交换跟替换,这个是乱数生成的,跟我希望给的不一致
还请有神人可以指点小弟
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.194.164.99 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1587451415.A.C29.html
1F:推 robert09080: 你的三笔数据长度不一样,产生出的阵列是有什麽相关 04/21 14:54
2F:→ robert09080: 连,看不懂第二列怎麽跑出19的 04/21 14:54
3F:→ OrzOGC: 拉平,随便取随便建list 04/21 15:10
※ 编辑: mymail (123.194.164.99 台湾), 04/21/2020 15:44:48
4F:推 darama: 照你的规则slicing再接起来 04/21 17:01
5F:推 yoche2000: 建一个新的list 用random做conditional statement 04/22 12:15
6F:→ yoche2000: mod是0就拉第一个list的element下来 mod是1就搭拉二个 04/22 12:16
7F:→ yoche2000: 不知道原po要的是不是这个 04/22 12:17
8F:→ yoche2000: 忘记打 for 回圈 by index 04/22 12:17
9F:→ refusekkk: 如果你知道交换的规则 直接简单slice就好 没必要用什 04/22 14:53
10F:→ refusekkk: 麽复杂的演算法 04/22 14:53
11F:推 LP9527: 你的规则非常非常不明确 04/28 16:56
12F:→ LP9527: 何谓局部 04/28 16:56
13F:→ LP9527: 大家长度都一样吗 04/28 16:56
14F:→ LP9527: 切一刀 还是任意打乱 04/28 16:56
15F:→ LP9527: 要保持原顺序吗 04/28 16:56
16F:→ LP9527: 为何你的举例2,3重复14,15消失 04/28 16:56
17F:→ LP9527: 规则没说清楚无法告诉你 04/28 16:56