免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5448 | 回复: 14
打印 上一主题 下一主题

py脚本,统计代码行数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-09 09:56 |只看该作者 |倒序浏览
上司让我统计代码行数,于是我下了wc.exe,然后win+r,cmd,dir /b /s *.java>>java.txt,再写个脚本如下
# coding=utf-8
import os;
"""
    统计总行数
"
""
fn = ["html.txt","java.txt","jsp.txt","xml.txt"];
wc = '"D:\\Program Files\\UnxUtils\\bin\\wc.exe"';
lines = 0;
for n in fn:
    f = open("./"+n);
    for line in f:
        line = "\"" + line + "\"";
        cmd = wc + " -l "+ line;
        cmd = "\"" + cmd + "\"";
        rst = os.popen(cmd).readlines();
        lrst = rst[0].split();
        lines = lines + int(lrst[0]);
print(lines);


其实dir也可以写进py里面去的,就是当时没多想...
cmd = 'dir /b /s *.jsp'
rst = os.popen(cmd).read()
rst.split('\n')

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2009-03-09 10:01 |只看该作者
这程序写的……
唉。

论坛徽章:
0
3 [报告]
发表于 2009-03-09 10:04 |只看该作者
??

不就是调用wc?还写的这么难看。

论坛徽章:
0
4 [报告]
发表于 2009-03-09 10:09 |只看该作者
额....
我主要是做j2ee的开发工作,python几乎用不到...
请大家指点下,怎样写好些.

论坛徽章:
0
5 [报告]
发表于 2009-03-09 10:40 |只看该作者
能用就好。

论坛徽章:
1
天秤座
日期:2014-04-27 07:42:20
6 [报告]
发表于 2009-03-09 10:51 |只看该作者

论坛徽章:
0
7 [报告]
发表于 2009-03-09 12:48 |只看该作者
原帖由 guotie 于 2009-3-9 10:40 发表
能用就好。

能解决问题就行,虽然写的有点……
还是鼓励下,慢慢来。当初咱写的也不漂亮啥

论坛徽章:
0
8 [报告]
发表于 2009-03-09 13:05 |只看该作者
原帖由 xiaoyu9805119 于 2009-3-9 12:48 发表

能解决问题就行,虽然写的有点……
还是鼓励下,慢慢来。当初咱写的也不漂亮啥


最近很有感悟,合适才是最好的..~


解释下,最初只是这样的,
cmd = wc + " -l "+ line;
后来发现os.popen有点特殊,特别是wc和line都含有空格的时候
先是加了这行,
line = "\"" + line + "\"";
依然报错,才又加了这行,
cmd = "\"" + cmd + "\"";
就变成了现在这个样子 我也不想滴,。
句子后面加逗号是因为java写惯了,当时想也没想就写上去的..
其他的,想知道其他人是怎样写的。。。平时接触python太少.

论坛徽章:
0
9 [报告]
发表于 2009-03-09 13:05 |只看该作者
原帖由 flw 于 2009-3-9 10:01 发表
这程序写的……
唉。

针对楼主的例子 你写个 不'哎'的看看 让我们学习学习

论坛徽章:
0
10 [报告]
发表于 2009-03-09 15:44 |只看该作者
如果只是统计行数.不算字数.

#coding:gbk
"""
统计文件行数
"
""
fset=['testR.py','testLocalVar.py']
print sum([len(open(f).readlines()) for f in fset])
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP