簡體   English   中英

如何以“#”開頭的python變量名?

[英]How to start a python variable name with a “#”?

我已經編寫了執行幾個步驟來處理某些文件(如果您感到好奇的話,則使用BAM文件,但這與我的問題無關的http://www.broadinstitute.org/igv/BAM )的代碼,以准備進行分析別人寫的軟件。

在處理BAM文件的代碼中,我想包括幾行代碼來建立一個數據庫,該數據庫記錄有關已處理文件的位置和其他相關信息。 這對於使用上述軟件進行分析是必需的。 此下游軟件的工作方式是,數據庫頂部應該有一個標頭,該標頭在行的開頭以#開頭。

現在,我正在嘗試使用pandas DataFrame,后來我打算將其寫入文本文件。 這是一個示例代碼片段,從理論上顯示了我正在嘗試做的事情。 這是行不通的,因為#使該行的其余部分成為注釋。 我還嘗試通過鍵入\\#來轉義特殊字符,但隨后它抱怨SyntaxError: unexpected character after line continuation character. 是否有人對如何解決這個問題有任何想法,以便我可以使用#字符從結果數據庫的標題行開始。

import pandas as pd
I_notid_lst = ["1","3"]
II_dir = ["/exampledir/moreexmaple/fake_01.bam.by_chr", "/exmapledir/moreexample/fake_02.bam.by_chr"]

db_df = pd.DataFrame(dict(#I_notid = I_notid_lst, II_dir = II_dir_lst))
print db_df.head()

#I_notid嚴格來說不是變量,而是給dict的關鍵字參數, dict是用於創建字典的構造函數。 像名稱這樣的關鍵字參數通常只能由字母數字字符和_ ,因此這種用法允許創建僅包含字符串且遵循python命名約定的鍵的字典。

但是,與往常一樣,您可以使用{key: value, ...}字典文字構造來創建帶有任何允許類型的鍵的字典,當然也可以使用具有非字母數字字符的字符串鍵來創建字典:

db_df = pd.DataFrame({'#I_notid': I_notid_lst, 'II_dir': II_dir_lst})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM