【问题标题】:Convert elements of a matrix to integers将矩阵的元素转换为整数
【发布时间】:2017-04-24 01:09:52
【问题描述】:

所以在Python中,我有一个矩阵如下:

theMatrix = [["String", "0"],["String2", "1"]]

我想将每个列表索引 1 处的所有数字转换为整数。

结果:

theMatrix = [["String", 0],["String2", 1]]

这不仅仅适用于两个列表:

eg. theMatrix = [["String", 0],["String2", 1],["String3", 2],["String4", 3]]

【问题讨论】:

  • 您使用什么语言? MATLAB?
  • 对不起,我正在使用 Python。我知道我错过了什么!

标签: python list matrix integer


【解决方案1】:

请详细说明编程语言,内部列表中是否会有更多元素或者它们总是元组?你想将字符串格式的每个整数转换为 int 还是只是内部列表中的第二项?这个数据结构的意图或用途是什么。您可能需要考虑的是字典或哈希表。请考虑一下它是否适合您的解决方案。

对于 python 语言,您可能在内部列表中有更多元素,并且始终必须更改位置 1,那么以下代码可能会有所帮助

for innerList in theMatrix:
    if len(innerList) > 1:
        value = int(innerList[1])
        innerList[1] = value if value >= 0 else 0

【讨论】:

  • 我正在使用python,内部列表中可能有更多元素,但是我要转换为整数的字符串的索引将始终相同,即索引1。我会需要手动完成所有算法,所以我不确定字典会帮助我。
【解决方案2】:
theMatrix = [["String", '0'],["String2", '1'],["String3", '2'],["String4", '3']]
#iterate the list of lists and convert the int string to int.
[[e[0],int(e[-1])] for e in theMatrix]
Out[222]: [['String', 0], ['String2', 1], ['String3', 2], ['String4', 3]]

【讨论】:

    猜你喜欢
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 2015-07-26
    • 1970-01-01
    • 2019-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多