相关疑难解决方法(0)

如何在Python中可靠地拆分字符串,当它可能不包含模式或所有n个元素时?

在Perl我能做到:

my ($x, $y) = split /:/, $str;
Run Code Online (Sandbox Code Playgroud)

无论字符串是否包含模式,它都将起作用.

在Python中,但这不起作用:

a, b = "foo".split(":")  # ValueError: not enough values to unpack
Run Code Online (Sandbox Code Playgroud)

在这种情况下防止错误的规范方法是什么?

python string split python-3.x

74
推荐指数
4
解决办法
6590
查看次数

如果太短,是否自动将 Python 列表扩展到 N 个元素?

N如果列表少于元素,Python 中自动将列表扩展到元素的最佳方法是什么N

也就是说,让我们有我有这个字符串:s = "hello there"。如果我这样做:

x, y, z = s.split()
Run Code Online (Sandbox Code Playgroud)

我会得到一个错误,因为s.split()返回一个包含两个元素的列表,但我将它分配给 3 个变量。我想要的是z被分配None

我知道我可以通过艰难的方式做到这一点:

l = s.split()
while len(l) < 3:
    l.append(None)
x, y, z = l
Run Code Online (Sandbox Code Playgroud)

但必须有比这更优雅的东西。

python list

22
推荐指数
4
解决办法
2565
查看次数

标签 统计

python ×2

list ×1

python-3.x ×1

split ×1

string ×1