| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1396 人关注过本帖
标题:[求助]分类问题的修改
取消只看楼主 加入收藏
阿智兄
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2021-3-8
结帖率:87.5%
收藏
已结贴  问题点数:15 回复次数:1 
[求助]分类问题的修改
非常感谢你在百忙之中抽空为我解答。希望能在不改变原程序功能的前提下得到你的帮助。
程序代码:
def check(n):
    if len(n)==1:
        return('0')
    else:
        return(n[0])

def output(filename,content):
    f=open(filename,'w+')
    for i in content:
        f.write(' '.join(i)+'\n')
    f.close()
    
    
f=open('data.txt','r+')
data=[i.strip().split('  ') for i in f]
f.close()

index=[tuple(map(lambda x:check(x),i)) for i in data]
indexdict=dict([[i,[]] for i in set(index)])
for i,j in zip(data,index):
    indexdict[j].append(i)
for i in indexdict:
    output(''.join(i)+'.txt',indexdict[i])

上面这个程序作用是对数据做分类,我想将子程序def check(n)改为对数据做奇偶,合单双以及质合的分类,却出错了,以下是我改的子程序:
程序代码:
def check(n): #奇偶判断
    if n % 2 == 0:
        return 0
    else:
        return 1

def check(n):#合单双
    if n == 1:
        return 0
    count = 0
    for c in range(1,n):
        if n % c == 0 :
            count += 1
        if count > 1:
            return 0
    if count == 1:
        return 1

def check(n):#质合数判断
     for i in range(2, n):
         if num % i == 0:
             return False
     return True

 new_list = list(filter(check,range(2,21)))


以下是data.txt的部分数据:
 1  2  3  4  5  13
 1  2  3  4  5  14
 1  2  3  4  5  15
 1  2  3  4  5  16
 1  2  3  4  5  17
 1  2  3  4  5  18
 1  2  3  4  5  19
 1  2  3  4  5  20
 1  2  3  4  5  21
 1  2  3  4  5  22
 1  2  3  4  5  23
 1  6  22  24  27  30
 1  6  22  24  27  31
 1  6  22  24  27  32
 1  6  22  24  27  33
 1  6  22  24  28  29
 1  6  22  24  28  30
 1  6  22  24  28  31
 1  6  22  24  28  32
 2  5  9  10  15  27
 2  5  9  10  15  28
 2  5  9  10  15  29
 2  5  9  10  15  30
 2  5  9  10  15  31
 2  5  9  10  15  32
 3  10  17  19  29  33
 3  10  17  19  30  31
 3  10  17  19  30  32
 3  10  17  19  30  33
 3  10  17  19  31  32
 5  14  20  23  27  33
 5  14  20  23  28  29
 5  14  20  23  28  30
 5  14  20  23  28  31
 12  13  14  16  20  22
 12  13  14  16  20  23
 12  13  14  16  20  24
 12  13  14  16  20  25
 12  13  14  16  20  26
 17  18  22  24  27  30
 17  18  22  24  27  31
 17  18  22  24  27  32
 17  18  22  24  27  33
 17  18  22  24  28  29
搜索更多相关主题的帖子: if return for def check 
2021-03-13 00:04
阿智兄
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2021-3-8
收藏
得分:0 
回复 2楼 fall_bernana
非常感谢你的回复。
问题解决了。

[此贴子已经被作者于2021-3-16 21:34编辑过]

2021-03-15 20:15
快速回复:[求助]分类问题的修改
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018378 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved