python - 如何将此项目 append 到同一列表中,而不是每次循环时创建一个新列表?

标签 python list loops append

这是我当前的代码:

fd = open('/var/log/secure.log')
syslog = fd.readlines()

countTable = {} # initialization of a dictionary
for line in syslog:
        data = line.split()  
        if len(data) >= 15:
                if data[14] in ['user=root']:
                        intrusions = []
                        ip = data[13].replace('rhost=', "")
                        intrusions.extend(ip)
                        print "intruder:", intrusions

这是我得到的输出:

intruder: ['218.92.0.201']
intruder: ['222.186.173.142']
intruder: ['222.186.173.142']
intruder: ['222.186.173.142']
intruder: ['218.92.0.201']
intruder: ['218.92.0.201']
intruder: ['222.186.30.218']
intruder: ['218.92.0.201']

如何将所有这些 IP 放入同一个“入侵”列表中?

谢谢!

最佳答案

您只需在第一个循环之前移动您的intrusions = []:

countTable = {} # initialization of a dictionary

intrusions = []
for line in syslog:
        data = line.split()  
        if len(data) >= 15:
                if data[14] in ['user=root']:

                        ip = data[13].replace('rhost=', "")
                        intrusions.extend(ip)
                        print "intruder:", intrusions

关于python - 如何将此项目 append 到同一列表中,而不是每次循环时创建一个新列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59974027/

相关文章:

python - DSaaS 使用 Python 添加全局规则

c# - 当 T 不同时,是否可以获取 List<T> 的项目数?

java - 是否有一个 List 实现(在 Java 中)支持移位插入?

r - 如何将值存储在R中for循环内的向量中

vba - Excel VBA Exit For 在 If block 内不起作用

python - Django allauth 示例 [Errno 61] 连接被拒绝

python - 将 Flask 应用程序部署到托管在 godaddy

c++ - C++-std::list.erase()不删除元素

c - 在循环中声明变量的级别是否有所不同?

python - 在 setup.py 中包含 CefPython 库