我目前使用python linecache模塊來抓取給定文本文檔中的特定行,並用所述行創建一個新文件。例如,代碼的一部分是這樣的:用linecache提取一行的特定變量
cs = linecache.getline('variables.txt', 7)
cs_1 = open("lo_cs", "w")
cs_1.write(str(cs))
cs_1.close()
的問題是,variables.txt內,線7由下式給出:
variable7 = 3423
例如。然而,我想要新文件lo_cs只包含實際值'3423'而不是整行文本。此外,我想將整個'getline'命令插入到一個if循環中,這樣如果變量7保留爲空,則會執行另一個操作。有沒有辦法使用linecache檢查'variable7 ='後面的空格,看看是否有任何輸入,如果是,只抓住特定的值或字符串?
我知道(但並不真正理解)bash腳本似乎使用'$'作爲插入或調用給定文件的佔位符。我想我需要實現類似的東西...
我想過在文本文件中有說明,指示值應該在下面一行中指定 - 以避免只選擇一行的段 - 但是它允許一個人意外地進入多餘的休息時間,這會弄亂所有後續的「getline」命令,就需要選擇哪一行而言。
任何幫助正確的方向將不勝感激!
這正是我所需要的。非常感謝! – user2068783
嗯,看起來我有這個方法的一些問題,並且我認爲它基於在.txt文件中'variable7 = 34'內有空格。 我已經成功地得到「無」返回的唯一方法是寫第二行,如下所示: SP = l.split(「=」) 就這樣,‘無’則返回「variable7 = '和variable7 ='。然而,如果實際上定義了一個整數,那麼'variable7 = 23'(沒有空格)'None'仍然被返回,但是如果它被寫爲'variable7 = 23',那麼記錄'23'。如果可能的話,我想消除對空間的敏感性。再次感謝。 – user2068783
@ user2068783更新了我的答案 – Korem