python中使用os模組的popen方法,去除輸出多餘的空行

房東為什麼不退押金發表於2020-11-25

在python中可以使用os模快來執行shell語句,在使用popen方式得到自己的輸入的shell語句返回值的時候,對多出一個空行,下面示範去除空行的方法
可以看到,下面使用popen方法得到的輸出值會多處一個空行

>>> import os
>>> file_info = os.popen('ls -l tmp.txt').read()
>>> print(file_info)
-rw-r--r--  1 julie-zhou  staff  14663 11  6 19:37 tmp.txt

>>>

使用.readlines()來檢視返回值的詳細資訊
可以看到,在輸出的值後面,預設多了一個換行符 \n

>>> file_info = os.popen('ls -l tmp.txt').readlines()
>>> print(file_info)
['-rw-r--r--  1 julie-zhou  staff  14663 11  6 19:37 tmp.txt\n']
>>>

我們可以將換行符替換成空或者刪除
可以使用內建函式replace(’\n’, ‘’),來替換字串中的換行符(\n),將其替換成空。

>>> file_info = os.popen('ls -l tmp.txt').read()
>>> file_info = os.popen('ls -l tmp.txt').read().replace('\n', '')
>>> print(file_info)
-rw-r--r--  1 julie-zhou  staff  14663 11  6 19:37 tmp.txt
>>>

相關文章