2016-09-29 43 views
0

我想知道如何將crontab行拆分爲如下所示的6個變量。也許與split()或其他字符串函數。Python - 拆分crontab條目到6個字段

Input: 
0 5 * * * Command1 arg1 arg2;Command2 arg1 arg2;... 

Output: 
Var1 = 0 
Var2 = 5 
Var3 = * 
Var4 = * 
Vat5 = Command1 arg1 arg 2;Command 2 arg1 arg2... 

感謝

+0

這不是一個代碼編寫服務。你到目前爲止嘗試了什麼?發佈您的代碼!當你運行它時發生了什麼?你預期會發生什麼?你有什麼特別的問題? – Robert

+0

羅伯特,我知道這不是一個代碼編寫服務(雖然我的問題確實像我在尋求代碼,而我不是)。 s.split(無,5)是我正在尋找的答案。 – user6901896

回答

2

str.split()有一個可選的第二個參數來限制返回值的數目:

In [11]: s='0 5 * * * Command1 arg1 arg2;Command2 arg1 arg2;...' 

In [12]: s.split(None, 5) 
Out[12]: ['0', '5', '*', '*', '*', 'Command1 arg1 arg2;Command2 arg1 arg2;...'] 

完整的示例程序:

import fileinput 

for line in fileinput.input(): 
    parts = line.split(None, 5) 
    print('Input:') 
    print(line) 
    print('Output:') 
    print('\n'.join('Var{} = {}'.format(i, v) for i,v in enumerate(parts))) 
+1

非常感謝!正是我需要的。 – user6901896

+0

@ user6901896 - 爲了幫助社區,不要忘記「接受」這個答案。 –