【问题标题】:Converting Multidimensional list into a single string in python在python中将多维列表转换为单个字符串
【发布时间】:2022-01-17 10:26:42
【问题描述】:
import sys
import math
import numpy as np

alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ "
message = "IFMMPAXPSME"
 
msg = np.array_split(list(message), len(message))
alp = np.array_split(list(alphabet), len(alphabet))
li = []


for i in range(len(msg)):
    for j in range(len(alp)):
        if msg[i] == alp[j]:
            li.append(alp[j-1:j])


print(li)

我得到的结果:

[[array(['H'], dtype='<U1')], [array(['E'], dtype='<U1')], 
[array(['L'], dtype='<U1')], [array(['L'], dtype='<U1')], 
[array(['O'], dtype='<U1')], [], [array(['W'], dtype='<U1')], 
[array(['O'], dtype='<U1')], [array(['R'], dtype='<U1')], 
[array(['L'], dtype='<U1')], [array(['D'], dtype='<U1')]]

谁能帮我解决这个问题?

【问题讨论】:

  • 不清楚你想达到什么。
  • @j1-lee codingame.com/training/easy/code-breaker-puzzle ,我想用我自己的方式做到这一点
  • @bichanna 我想使用字母在字母表中的位置解码消息,方法是将其转换为列表并将其转换回字符串

标签: python arrays numpy


【解决方案1】:

Nvm,我自己解决了

import numpy as np

alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ "
message = "IFMMPAXPSME"
li = []

def Convert(string):
    list1=[]
    list1[:0]=string
    return list1

def toString(s):
    string = ""
    
    for i in s:
        string += i
        
    return string

msg = Convert(message)
alp = Convert(alphabet)



for i in range(len(msg)):
    for j in range(len(alp)): 
        if msg[i] == alp[j]:  li.append(toString(alp[j-1:j]))


print(''.join(li))

【讨论】:

  • 虽然此代码 sn-p 可能是解决方案,但 including an explanation 确实有助于提高您的帖子质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
  • @holydragon 谢谢你的建议
猜你喜欢
  • 2020-10-28
  • 1970-01-01
  • 2023-03-27
  • 2013-10-21
  • 2021-11-19
  • 1970-01-01
  • 2020-04-05
  • 2022-11-20
  • 1970-01-01
相关资源
最近更新 更多