鱼C论坛

 找回密码
 立即注册
查看: 1876|回复: 2

[已解决]请问如何用变量调用list中的元素?

[复制链接]
发表于 2017-8-13 17:52:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如题,我在程序中试图调用list 中的函数,却总是报错:TypeError: 'list' object is not callable。
求大神解答.
  1. import os
  2. list1=os.listdir(os.curdir)
  3. file_data=[]
  4. file_type=[]
  5. file_type_total=[]
  6. for each in list1:
  7.     file_data=list(os.path.splitext(each))
  8.     check=file_data[1]
  9.     if check not in file_type:
  10.         file_type.append(check)
  11.     file_type_total.append(check)
  12. a=int(len(file_type_total))
  13. for i in range(a):
  14.     b=int(i)
  15.     str1=file_type_total(b)
  16.     str2=str(file_type.count(file_type_total(b)))
  17.     print('该文件夹下共有类型为:'+str1+'的文件'+str2+'个')
  18.    
复制代码
最佳答案
2017-8-13 18:49:53
file_type_total(b)要改成file_type_total[b]
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-8-13 18:49:53 | 显示全部楼层    本楼为最佳答案   
file_type_total(b)要改成file_type_total[b]
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-13 18:57:16 | 显示全部楼层
你的代码看得不是很懂:
这是我改的代码你参考下。
  1. import os

  2. list1=os.listdir(os.curdir)
  3. file_type=[]
  4. file_type_total=[]
  5. for each in list1:
  6.     ext=os.path.splitext(each)[1] #获取 扩展名   
  7.     file_type_total.append(ext) #添加到总list
  8.     if ext not in file_type: #去重后的list
  9.         file_type.append(ext)
  10.    
  11. for str1 in file_type:
  12.     i=0
  13.     for str2 in file_type_total:
  14.         if str1 == str2:
  15.             i+=1
  16.     print('该文件夹下共有类型为:%s 的文件 %d 个' % (str1,i))
复制代码

评分

参与人数 1鱼币 +3 收起 理由
shkhs + 3 谢谢了

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-1 13:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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