本文目录一览:
- 1、IDLE(python) 怎么显示行数
- 2、python如何去除重复行并分别统计重复的行数?已有去除重复的代码
- 3、python 文件内容操作,如一个文件100万条数据,查询相同行数
- 4、pandas如何统计excel中列数据的行数?
IDLE(python) 怎么显示行数
1、打开IDLE shell或者IDLE编辑器,可以看到左下角有个Ln和Col,事实上,Ln是当前光标所在行,Col是当前光标所在列。我们如果想得到文件代码有多少行,我们可以直接移动光标到行末,以此来得到一个行数。
2、如果想让Python IDLE显示行号,我们可以通过扩展IDLE功能来做到。图为设置好的效果图
3、需要下载一个LineNumber.py扩展svwh.dl.sourceforge.net/project/sourcetrac/tmp/IDLE/idlexlib/extensions/LineNumbers.py。
4、我们打开Python安装目录,找到安装目录下的Lib\idlelib目录复制LineNumber到这个目录。
6、保存之后重启IDLE,可以看到我们的Shell和editor都有了行号。
python如何去除重复行并分别统计重复的行数?已有去除重复的代码
python的速度效率是不高的,如何对速度要求比较高的话建议可以用c来写。
我写了这个代码,python2.6+windows xp测试通过。
希望能帮到你~
===================================================
a=[] #初始化要用到的列表a,用于记录原始行信息
b=[] #初始化要用到的列表b,用于记录结果数据,由两项构成。前一项为行信息如“小明:90”,后一项为该行对应的出现次数如2
f1=file("1.txt", "r") #打开1.txt文件
for line in f1:
a.append(line) #将1.txt文件每一行作为一个元素,存入列表a
f1.close
for n in a: #遍历a中每一项(记为n),即1.txt中每一行
flag=1
for i in range(0,len(b)):
if n == b[i][0]: #n与列表b中的每一项对比,如果有相等的:
b[i][1]=b[i][1]+1 #那么对应的出现计数加1
flag=0
break
if flag==1: #如果前面的比对没有一个相等的,即该行是第一次出现:
b.append([n,1]) #那么在列表b中添加改行为新的一项
f2=file("2.txt", "w") #打开2.txt文件,用于输出
for n in b: #输出格式为:行信息 (tab) 出现次数 (回车)
f2.write(str(n[0][0:-1]) + "\t")
f2.write(str(n[1]) + "\n")
f2.close
print "Finished" #完成
python 文件内容操作,如一个文件100万条数据,查询相同行数
使用open函数逐行读取文件,依次对比,如包含要求字符串,则数量累加1,读取完成后可统计出行数,代码如下:
n = 0
for line in open('filename','r'):
if '固定字符串' in line:
n += 1
print(n)
说明:
使用 for line in open这种方式可以提高代码效率,如需要更复杂统计,例如重复行,则可以使用hash函数,把行hash值存入列表,再做统计。
pandas如何统计excel中列数据的行数?
准备测试数据:
打开PyCharm输入以下代码
运行效果如下:
附上实现代码:
#!/usr/bin/env python
import pandas as pd
OPENPATH = 'test.xls'
SAVEPATH = 'test1.xls'
def total_count(path=OPENPATH, sheetname='testsheet'):
df = pd.read_excel(path, sheet_name=sheetname, names=['值', '计数'])
# 获取统计项目
item_name = set(df['值'])
# 创建字典统计
total_dict = dict(zip([i for i in item_name], [
0 for _ in range(len(item_name))]))
# 遍历”值“列,逐个统计数量
for index, item in enumerate(df['值']):
# 如果在set中
if item in item_name:
# 加入计数统计
total_dict[item] += df['计数'][index]
# 返回
return total_dict
def datato_excel(path=SAVEPATH, sheet_name='total', data_dict={}):
report_df = pd.DataFrame.from_dict(data_dict,orient='index')
xl_writer = pd.ExcelWriter(path)
report_df.to_excel(xl_writer, sheet_name)
try:
xl_writer.save()
print('Save completed')
except:
print('Error in saving file')
if __name__ == "__main__":
datato_excel(data_dict=total_count())
不知道这是不是您想要的结果,如果有帮助,请采纳一下,谢谢!