在for python循环中运行多个函数
这是我节目的开始。我希望很多函数都在for循环中,如第三个函数所示。我该怎么办在for python循环中运行多个函数,python,loops,Python,Loops,这是我节目的开始。我希望很多函数都在for循环中,如第三个函数所示。我该怎么办 #!/usr/bin/env python from rdflib import URIRef, Graph from StringIO import StringIO import subprocess as sub class Wordnet(): def __init__(self, graph): graph = Graph() def process_file(sel
#!/usr/bin/env python
from rdflib import URIRef, Graph
from StringIO import StringIO
import subprocess as sub
class Wordnet():
def __init__(self, graph):
graph = Graph()
def process_file(self, file):
file = open("new_2.txt", "r")
return file
def line_for_loop(self, file):
for line in file:
def split_pointer_part(self, before_at, after_at, line):
before_at, after_at = line.split('@', 1)
return before_at, after_at
def split_word_part(self, word_part, line):
word_part = line.split()
return word_part
这只是一个缩进for循环中其他所有内容的问题,还是在调用函数时必须定义循环
作为程序的一部分,如何调用多个函数?我是python新手,我真的不知道。进程不是合适的术语。这些更好地称为函数或方法。就Python循环而言,缩进很重要。你确实需要缩进
def line_for_loop(self, file):
for line in file:
process_file("example_file_name.txt")
split_pointer_part(0, 10, "some test string")
您应该从循环内部进行函数调用。上面的示例代码可能不是您代码的精确解决方案,但它应该足以回答您的问题。这里没有程序。课堂本身什么都不做。您需要实例化该类,然后调用它的一个方法(这是您所调用的“进程”的正确术语)。因此,在本文件末尾,您可以执行以下操作:
wordnet = Wordnet()
my_file = wordnet.process_file()
wordnet.line_for_loop(my_file)
在一个方法中,您可以调用另一个:因此,对于您的循环,您可以执行以下操作:
def line_for_loop(self, file):
for line in file:
self.my_method_1()
self.my_method_2()
您的代码还有一些其他问题。例如,在\uuuu init\uuuu
方法中,您定义了一个图形
局部变量,但从未对其执行任何操作,因此它不会存储在任何位置。您需要将变量存储在self
上,以便它们成为实例属性:
def __init__(self):
self.graph = Graph()
此外,您似乎对何时向函数传递参数感到困惑。两次(在\uuuu init\uuuu
和process\u file
中)您接受一个参数,然后在方法内部用局部变量重写它。如果在函数中定义变量,则不应将其作为参数传递
请注意,正如我之前说过的,Python不是Java,并不总是需要类。在这种情况下,类除了作为方法的持有者之外,对程序没有任何贡献。在Python中,您通常只需要在模块中使用函数就可以了。这里有两个不同的问题。当您说“进程”时,您几乎肯定是指不同的东西。你想用这个文件做什么?