我最近开始学习Python,而且我很难理解字符串模块上的Python文档(www.python.org)。
当我使用Python文档(www.python.org)搜索字符串模块时,我得到一个字符串模块函数列表,它们在括号中加上字符串变量(“s”),后跟函数名称。例如,在“string.split(s [,sep [,maxsplit]])”的情况下,不应该是“s.split([sep [,maxsplit]])”?
我不遵循的是字符串变量在括号中就像输入变量一样。
如果s =“我正在拆分这句话。”,我喜欢用空格分割句子(字符串变量s),命令应该是s.split()。例如:
s = "I am splitting this sentence."
s.split()
['I', 'am', 'splitting', 'this', 'sentence.']
但是,当我阅读文档时,听起来我需要将命令编写为“split(s)”而不是“s.split()”,因为字符串变量在括号内?
有人可以解释为什么字符串变量在括号内(“string.split(s [,sep [,maxsplit]])”)?为什么文档没有写成“s.split([sep [,maxsplit]])”?
[补充] 下面有人提到我的问题已经在这里被问到并回答了,但我找不到那个问题。并且,我所指出的问题与我的问题完全不同......请帮忙!
答案 0 :(得分:3)
有一个“字符串”模块,它实现了许多与字符串对象“str”相同的功能。两者都有效。您可以string.split('foo bar baz')
或'foo bar baz'.split()
。
“字符串模块包含许多有用的常量和类,以及一些不推荐使用的旧函数,它们也可用作字符串上的方法。”
答案 1 :(得分:2)
这是方法在Python中调用的方式。这是一个例子:
class Test(object):
def method(self):
print 5
现在我可以用两种方式来称呼它:
t = Test()
t.method()
或:
t = Test()
Test.method(t)
所以自我只是第一个参数。但第一种方式是强烈的首选。
答案 2 :(得分:0)
是一个字符串对象。字符串具有split()方法,您可以使用点表示法(即s.split())访问它。括号采用参数,例如用于选择要拆分的字符的参数。
"h.e.l*l.o.".split('*')
将返回['h.e.l','l.o'],因为已将星号指定为拆分字符串的参数。 当你在谈论在split(split(s))的括号中有s时,s代表一个参数。当s在这里: s .split时,s是一个字符串对象。