【问题标题】:Python string splittingPython字符串拆分
【发布时间】:2013-04-08 19:01:31
【问题描述】:

我需要取一个十六进制对,例如 7A 并将其分解为 7A 作为单独的变量,以便进一步操作。拆分此字符串的正确方法是什么,因为我没有尝试删除任何字符,而且我没有任何分隔符?

【问题讨论】:

    标签: python string hex


    【解决方案1】:

    你可以使用list:

    list('7A') 将返回一个包含 7 和 A 的列表:

    ['7', 'A'] #Note that the single quote will not appear when you print the content :)
    

    list('7A')[0] 包含 7,list('7A')[1] 包含 A)

    或通过:

    [x for x in '7A']
    

    如果你的字符串中有超过 2 个字符并且你写:

    lst = list(youtString)
    

    那么lst 将包含字符串的所有字符。

    【讨论】:

    • 可以用你的方法,但是去掉7和A周围的''?
    • 从列表中提取项目时,将没有'
    • 我测试了如下代码:'a = list('7A')[0]' 'print a' 得到''7''。
    【解决方案2】:

    将它们拆分“作为单独的变量以供进一步操作”:

    s = "7A"
    firstHex, secondHex = list(s)
    

    输出:

    firstHex = 7
    secondHex = A
    

    注意:只有两位十六进制字符才有效。

    【讨论】:

    • 这也有效,它会移除 7 和 A 周围的 ''。
    • 只有在十六进制字符串中只有两个字符时才能按预期工作。如果十六进制值是一个较长的数字,则会出现错误。
    • @EbiDK 谢谢提醒。我完全忘了在我的回答中提到这一点。
    • @herinkc: 如果我需要拆分一个包含两个以上非十六进制字符的字符串,这种方法可以吗?
    • 谢谢,非常感谢!
    猜你喜欢
    • 2010-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多