【发布时间】:2021-12-27 03:01:22
【问题描述】:
大家好 第一次不得不寻求帮助,但我现在有点困难。我从 8 月开始学习 python,我一直在挑战要在 11 月底完成,我希望能帮助我的代码正常工作。我的任务需要找到一个最频繁出现的 ip 地址并计算它出现的次数,而且这个信息必须显示给用户,我一直在提供 4 个具有 ips 的文件 .txt。我还需要使用非平凡的数据结构并内置 python 排序和/或搜索功能,在程序中使用函数、参数传递和返回值。以下是他们推荐我使用的示例数据结构:-
`enter code here`
def analyse_logs(parameter):
# Your Code Hear
return something
def extract_ip(parameter):
# Your Code Hear
return something
def find_most_frequent(parameter):
# Your Code Hear
return something
# Test Program
def main():
# Your Code Hear
# Call Test Program
main()
下面是我想出的,代码与提供的示例完全不同,但我所做的并没有直接给我输出,而是创建了一个新的文本文件,该文件已排序但现在是什么我正在寻找:-
enter code here
def sorting(filename):
infile = open(filename)
ip_addr = []
for line in infile:
temp = line.split()
for i in temp:
ip_addr.append(i)
infile.close()
ip_addr.sort()
outfile = open("result.txt", "w")
for i in ip_addr:
outfile.writelines(i)
outfile.writelines(" ")
outfile.close()
sorting("sample_log_1.txt")e here
我创建的代码已对 .txt 文件中的所有内容进行了排序,并输出了一直使用到最不常用的最频繁使用的内容。我所寻找的只是一种可以对 .txt 文件进行排序的算法,找到更频繁的 IP 地址,然后打印出该 ip 以及它出现的次数。我希望我已经提供了一切,我相信这可能是非常基本的东西,但我就是无法理解它。
【问题讨论】:
-
请修正缩进。并删除所有
enter code here占位符。 -
看看
collections.Counter() -
感谢 Barmar,但不确定我是否应该使用 collections.counter
-
我认为“我还需要使用非平凡的数据结构并内置 python 排序和/或搜索功能”允许这样做
-
来自示例结构,前提是他们希望我们使用 3 个函数 def analyse_logs()、def extract_ip () 和 def find_most_frequent() 并打印结果
标签: python function sorting parameters