吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 379|回复: 1
收起左侧

[经验求助] python代码怎么在线运行不了呢?

[复制链接]
丨丨流氓兔 发表于 2024-3-1 14:36
25吾爱币
本帖最后由 丨丨流氓兔 于 2024-3-1 14:37 编辑


python
def process_line(line, prev_line, count_dict):
    # 提取当前行的第一个数字(前七位)并将其转换为整数集合
    current_set = set(int(d) for d in line.split()[0][:7])
   
    # 检查前一行的第一个数字是否包含当前行的第一个数字
    if int(prev_line.split()[0][:1]) in current_set:
        # 如果包含,增加相应的计数器
        count_dict['inside'] += 1
    else:
        # 如果不包含,将相应的计数器清零
        count_dict['inside'] = 0
   
    count_dict['total'] += 1
    return count_dict

def main():
    with open('your_file.txt', 'r') as file:
        prev_line = ''
        count_dict = {'inside': 0, 'total': 0}
        for line in file:
            # 处理每一行
            count_dict = process_line(line, prev_line, count_dict)
            prev_line = line
        print(count_dict)  # 输出统计结果

if __name__ == "__main__":
    main()

最佳答案

查看完整内容

这里有问题,如果处理的是文件第一行,prev_line是空字符串,这句会越界。 可以改为:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

haxi 发表于 2024-3-1 14:36
[Python] 纯文本查看 复制代码
if int(prev_line.split()[0][:1]) in current_set:


这里有问题,如果处理的是文件第一行,prev_line是空字符串,这句会越界。

可以改为:

[Python] 纯文本查看 复制代码
if prev_line and int(prev_line.split()[0][:1]) in current_set:
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-15 16:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表