我查看了我的书和文档,并做了这个:
a = "hello"
b = a.split(sep= ' ')
print(b)
Run Code Online (Sandbox Code Playgroud)
我得到一个错误,说split()不带关键字参数.怎么了?
我想要['h','e','l','l','o']我试图不通过sep而只是a.split(''),并得到['你好']
Python允许一个名为"关键字参数"的概念,您可以在其中告诉您在调用函数时传递的参数.但是,标准split()函数不采用这种参数.
要将字符串拆分为字符列表,请使用list():
>>> a = "hello"
>>> list(a)
['h', 'e', 'l', 'l', 'o']
Run Code Online (Sandbox Code Playgroud)
另外,关键字参数的示例可能是:
def foo(bar, baz=0, quux=0):
print "bar=", bar
print "baz=", baz
print "quux=", quux
Run Code Online (Sandbox Code Playgroud)
您可以通过几种不同的方式调用此函数:
foo(1, 2, 3)
foo(1, baz=2, quux=3)
foo(1, quux=3, baz=2)
Run Code Online (Sandbox Code Playgroud)
请注意如何更改关键字参数的顺序.
尝试一下:
a = "hello"
b = a.split(' ')
print(b)
Run Code Online (Sandbox Code Playgroud)
注意区别:a.split(' ')而不是a.split(sep=' '). 尽管文档将参数命名为“sep”,但这实际上只是出于文档目的。它实际上不接受关键字参数。
回应 OP 对这篇文章的评论:
"a b c,d e".split(' ')将“abc,d e”分隔成字符串数组。找到的每个 ' ' 都被视为分隔符。所以分开的字符串是["a", "b", "c,d", "e"]. "hello".split(' ')每次看到空格时都会分割“hello”,但“hello”中没有空格
如果您想要字母数组,请使用列表理解。[letter for letter in string],例如[letter for letter in "hello"],或者只使用list构造函数,如list("hello").
| 归档时间: |
|
| 查看次数: |
1427 次 |
| 最近记录: |