鱼C论坛

 找回密码
 立即注册
查看: 1401|回复: 11

[技术交流] 编程实现对txt中数据的简单处理

[复制链接]
发表于 2018-3-11 17:30:49 | 显示全部楼层 |阅读模式

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

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

x
将txt文档中,每一行的第一个字符提取出来,统计出来,#开头的有几行,%开头的有几行。
>>> result=[]
with open('C:\Users\Administrator\Desktop\omim.txt','r') as f:
    for line in f:
        result.append(list(map(float,line.split(','))))
    print(result)
                                  
>>> lst=[]                                  
>>> with open ('C:\Users\Administrator\Desktop\omim.txt') as file:
                                  for line in file:
                                  lst.append(line[0])
SyntaxError: expected an indented block
我这两个写法都是报错了的,实现不了想要的功能

截图

截图


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-11 19:13:12 | 显示全部楼层
你这是什么,没看懂
用readline一次读一行
f不是列表,也不是迭代器,你用in是什么意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-11 19:26:39 | 显示全部楼层
第二个已经提示语法错误了,最后一行要缩进
另外打开文件最好用r'xxx',也就是raw string,不然\是转义字符
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 19:35:34 From FishC Mobile | 显示全部楼层
lyjlyj 发表于 2018-3-11 19:13
你这是什么,没看懂
用readline一次读一行
f不是列表,也不是迭代器,你用in是什么意思

f就是file,我是想把每一行的第一个字符提出来,变成一个list[],然后在看list里面有多少个#,多少个%,从而知道这个txt数据,有多少行是#开头的,有多少行是%开头。我新手的,随便从网上搜的代码,打进去都是报错的。还麻烦大佬教一下应该怎么写。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 19:36:15 From FishC Mobile | 显示全部楼层
__糖分 发表于 2018-3-11 19:26
第二个已经提示语法错误了,最后一行要缩进
另外打开文件最好用r'xxx',也就是raw string,不然\是转义字 ...

我是想把每一行的第一个字符提出来,变成一个list[],然后在看list里面有多少个#,多少个%,从而知道这个txt数据,有多少行是#开头的,有多少行是%开头。我新手的,随便从网上搜的代码,打进去都是报错的。还麻烦大佬教一下应该怎么写。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-11 20:17:57 | 显示全部楼层
天佑小璐子 发表于 2018-3-11 19:36
我是想把每一行的第一个字符提出来,变成一个list[],然后在看list里面有多少个#,多少个%,从而知道这个 ...
  1. sharps = 0
  2. percents = 0
  3. others = 0
  4. with open(r'C:\Users\Administrator\Desktop\omim.txt', 'r') as f:
  5.     for line in f:
  6.         if line.startswith('#'):
  7.             sharps += 1
  8.         elif line.startswith('%'):
  9.             percents += 1
  10.         else:
  11.             others += 1

  12. print('#: %d    %%: %d  其他: %d' % (sharps, percents, others))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 22:09:34 From FishC Mobile | 显示全部楼层
__糖分 发表于 2018-3-11 20:17

我这出啥问题了呢
_)W5}U8(8@V[EU`(H@@S0{M.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 22:32:09 From FishC Mobile | 显示全部楼层
天佑小璐子 发表于 2018-3-11 19:36
我是想把每一行的第一个字符提出来,变成一个list[],然后在看list里面有多少个#,多少个%,从而知道这个 ...

成功了!!!运行的很好 蟹蟹大佬   如果你平常不忙的话 可以加个QQ 1012956455   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 22:57:41 From FishC Mobile | 显示全部楼层
__糖分 发表于 2018-3-11 20:17

就可能还是有问题
{N7`P6TAH`[_2{YTM6X1{T6.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-11 23:13:01 From FishC Mobile | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-12 10:54:07 | 显示全部楼层

Syntax Error里提示了错误原因:同时使用了tab和空格导致前后缩进不一致。解决方法是要么统一用空格缩进,要么统一用tab缩进。QQ用的不多,有问题直接来这提问吧,热心的鱼油们会尽量帮忙解答了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-28 10:15:40 | 显示全部楼层

有空吗 我又发了新问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 20:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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