Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python检索行数_Python - Fatal编程技术网

使用python检索行数

使用python检索行数,python,Python,我试图在ubuntu上使用python检索文件的行数 我尝试了以下方法: os.system("wc -l fileName") 但它的返回值类似于 numberOfLines fileName 0 当我尝试检索结果时: l=os.system(“wc-l文件名”) 我得到了l=0 我还试图分割结果,以便只保留第一个元素,但这会引发AttributeError:“int”对象没有属性“split” 如何获取要查找的行数?操作系统将返回wc-l命令的退出值,如果没有错误发生,该值为零 您需要程

我试图在ubuntu上使用python检索文件的行数

我尝试了以下方法:

os.system("wc -l fileName")
但它的返回值类似于

numberOfLines fileName
0
当我尝试检索结果时: l=os.system(“wc-l文件名”)

我得到了
l=0

我还试图分割结果,以便只保留第一个元素,但这会引发
AttributeError:“int”对象没有属性“split”


如何获取要查找的行数?

操作系统将返回
wc-l
命令的退出值,如果没有错误发生,该值为零

您需要程序的实际输出:

#TODO: handle CalledProcessError, malformatted output where appropriate

wc_output = subprocess.check_output(["wc", "-l", fileName])
num_lines = int(wc_output.split()[0])

如果是参数,
wc
会打印文件名,但如果从stdin开始计算行数,则不会打印。@w.m类似地,我尝试了子流程。检查输出([“ls”,“files*”]),但出现错误,告知文件*不存在。我怎样才能指定我想要所有名称以files开头的文件?@w.m.er,这与我的幸福无关,但将文件重定向到stdin for wc,而不是使用split?@bigTree lookup glob/globbing,可能还有shell=True标志(及其安全警告)不是更好吗@kojiro您必须用Python打开该文件,还是使用shell=True?