我实际上知道如何使用loop,但代码看起来太丑了:-(.所以我想问一些更好的方法.
我有一个字符串:
a = "123 456 7sr"
Run Code Online (Sandbox Code Playgroud)
我想将每个数字/字母/空格/等转换为列表.期望的结果应该是:
["1", "2", "3", " ", "4", "5", "6", " ", "7", "s", "r"]
Run Code Online (Sandbox Code Playgroud)
还有其他一些方法吗?(请不要使用的方法for/while loop)
谢谢您的帮助!
在任何地方都可以使用的直接方法是调用list构造函数,它将任何可迭代的(并且str是它们的字符的可迭代)转换为迭代list产生的值的一个:
list(a)
Run Code Online (Sandbox Code Playgroud)
在Python 3.5+以及其他解包方案概括中,您可以选择:
[*a]
Run Code Online (Sandbox Code Playgroud)
这相当于list(a),除了它不需要查找并list通过通用函数调用语义调用构造函数(使其稍微更快并使其免受偶然的行为变化,如果list名称阴影,例如因为某人做了一些可怕的事情list = [1,2,3]).
所有其他方法(例如,无操作列表推导)都是这两种方法的较慢,较为丑陋的版本.
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |