我有一些簡單的python代碼,可在文件中搜索字符串,例如path=c:\path,其中c:\path部分可能會有所不同。當前代碼是:def find_path(i_file): lines = open(i_file).readlines() for line in lines: if line.startswith("Path="): return # what to do here in order to get line content after "Path=" ?取得文字的簡單方法是什么Path=?python 字符串
3 回答

蝴蝶不菲
TA貢獻1810條經驗 獲得超4個贊
如果字符串是固定的,則可以簡單地使用:
if line.startswith("Path="):
return line[5:]
它將為您提供字符串中從位置5開始的所有內容(字符串也是一個序列,因此這些序列運算符也可以在此處使用)。
或者,您可以先分割行=:
if "=" in line:
param, value = line.split("=",1)
然后,param是“ Path”,值是第一個=之后的其余值。

牛魔王的故事
TA貢獻1830條經驗 獲得超3個贊
一般來說,對于切片(有條件的或無條件的),我更喜歡同事最近提出的建議;使用帶有空字符串的替換。易于閱讀代碼,減少代碼(有時),減少指定錯誤字符數的風險。好; 我不使用Python,但是在其他語言中,我更喜歡這種方法:
rightmost = full_path.replace('Path=', '', 1)
或-跟進該帖子的第一條評論--僅當行開頭為時才應這樣做Path:
rightmost = re.compile('^Path=').sub('', full_path)
與上面建議的一些建議的主要區別在于,不涉及“幻數”(5),也不需要同時指定“ 5” 和字符串“ Path=”,換句話說,我更喜歡代碼維護中的這種方法。觀點看法。
添加回答
舉報
0/150
提交
取消