用冒號分隔的喲。
此章後面講的json,配置檔案讀取,原理應該一樣吧,只是要用合適的包去處理吧。
csv文件是用csv包處理的。
文件:root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
**:
import截圖:csvimport
sysfrom optparse import
optionparser
if__name__ == '
__main__':
parser =optionparser()
parser.add_option('-f
', '
--file
', help="
csv data file")
opts, args =parser.parse_args()
ifnot
opts.file:
parser.error(
'file name not exist.')
#create a dict reader from an open file
#handle and iterate through rows.
csv.register_dialect('
passwd
', delimiter='
:',quoting=csv.quote_none)
dict_key = ('
login
','pwd
','uid
','gid
','comment
','home
','shell')
reader = csv.dictreader(open(opts.file,'
ru'),fieldnames=dict_key,dialect='
passwd')
for user in
reader:
print ('
%s logs in with %s
' %\
(user[
'login
'], user['
shell
']))
csv.register_dialect
python異常處理 Python 異常處理
使用者輸入不完整 比如輸入為空 或者輸入非法 輸入不是數字 異常就是程式執行時發生錯誤的訊號,在python中,錯誤觸發的異常如下 在python中不同的異常可以用不同的型別 python中統一了類與型別,型別即類 去標識,不同的類物件標識不同的異常,乙個異常標識一種錯 觸發indexerror 觸...
python事件處理 Python事件處理程式
我正在嘗試實現乙個排序的事件處理程式。我嘗試使用popen使用外部程序收集示例網路捕獲,並編寫乙個xml檔案。我解析xml檔案來收集我需要的資訊。但是我不想終止這個過程,直到資料報的數量達到一定限度。def getpacketcount xmlfile,count,pid while 1 try p...
Linux的訊號處理
linux為實現訊號處理提供了比較多的介面,看似紛雜,但理清訊號的關係後還是很有條理的。主要分為以下四組,怎麼傳送乙個訊號,收到乙個訊號後做什麼樣的處理,主動等待乙個訊號的發生,對特定訊號只記錄是否發生供以後再處理 四組的api如下 不考慮多執行緒 傳送訊號 kill,alarm,arise 安裝訊...