私信  •  关注

Matthias

Matthias 最近创建的主题
Matthias 最近回复了
11 年前
回复了 Matthias 创建的主题 » Python删除字符串开始和结束处出现的任何非字母表[重复]

result = re.sub('(.*?)([a-z].*[a-z])(.*)', '\\2', '23WERT#3T67', flags=re.IGNORECASE)

4 年前
回复了 Matthias 创建的主题 » sqlite commit不使用python保存更新更改?

数据库连接与光标无关。

你知道的

Database.conn = sqlite3.connect(self.location + self.name)
Database.cursor = sqlite3.connect(self.location + self.name).cursor()

Database.conn.commit() 不会提交任何更改 cursor .

Database.conn = sqlite3.connect(self.location + self.name)
Database.cursor = Database.conn.cursor()
4 年前
回复了 Matthias 创建的主题 » Python:无法在第一个函数的结果之后移动到第二个函数

在第一个函数中,用 readlines . 当你使用 阅读线 在第二个函数中,您已经在文件的末尾,没有更多的数据可供读取,因此 for 甚至没有进入循环。

但不需要为每个函数再次读取文件。在函数外部读取文件并将其放入列表中。然后将参数添加到接受此列表的每个函数中。在函数中,可以循环遍历列表。

def function_search_search_key(lines):
    search_search_key = ['{search_key:']
    for line in lines:
        for word in search_search_key:
            if word in line:
                print(line)


def function_search_event_type(lines):
    search_event_type = ['event_type:']
    for line in lines:
        for word in search_event_type:
            if word in line:
                print(line)


def main():
    with open('scan_dcn.yaml', 'r') as yamlfile:
        lines = yamlfile.readlines()
    function_search_search_key(lines)
    function_search_event_type(lines)

if __name__ = '__main__':
    main()

如果需要更改文件名,可以在一个地方进行更改。如果在每个函数中打开并读取文件,则必须更改文件名的所有占用。