禁轉
輸入檔案
dna序列的sam檔案
第一列,序列名;第十列,序列;分割 tab
目標計算每個read的gc含量(只考慮dna序列由atgc組成的情況),並輸出結果到檔案
輸出檔案
第一列read id,第二列read的序列,第三列gc含量
def cal_gc(seq):
"""計算gc含量
"""seq = seq.upper() #全部轉換為大寫
return round((seq.count('c') + seq.count('g')) / float(len(seq)),2)
#round 用於保留兩位小數,float將序列長度轉換為浮點型
infile = 'data/alignment.sam'
outfile = 'output/gc.txt'
in_handle = open(infile) #open(檔案路徑,開啟方式預設為r)
out_handle = open(outfile, 'w')
out_handle.write('read_id\tseq\tgc\n') #表頭
cnt = 0
for line in in_handle:
if cnt != 0: #用於有列名時去掉第一行列名
row = line.split('\t') #返回列表
read_id = row[0]
seq = row[9]
gc = cal_gc(seq)
#print([read_id, seq, gc]) #檢查
out_handle.write('%s\t%s\t%s\n' % (read_id,seq,gc)) # %s佔位符
cnt += 1
in_handle.close()
out_handle.close()
使用try
def cal_gc(seq):
"""計算gc含量
"""seq = seq.upper() #全部轉換為大寫
return round((seq.count('c') + seq.count('g')) / float(len(seq)),2)
#round 用於保留兩位小數,float將序列長度轉換為浮點型
infile = 'data/alignment.sam'
outfile = 'output/gc.txt'
in_handle = none
out_handle = none
try:
in_handle = open(infile) #open(檔案路徑,開啟方式預設為r)
out_handle = open(outfile, 'w')
out_handle.write('read_id\tseq\tgc\n') #表頭
cnt = 0
for line in in_handle:
if cnt != 0: #用於有列名時去掉第一行列名
row = line.split('\t') #返回列表
read_id = row[0]
seq = row[9]
gc = cal_gc(seq)
#print([read_id, seq, gc]) #檢查
out_handle.write('%s\t%s\t%s\n' % (read_id,seq,gc)) # %s佔位符
cnt += 1
finally:
in_handle.close()
out_handle.close()
#不論try中是否有異常,finally中的內容都會執行
使用上下文管理器
def cal_gc(seq):
"""計算gc含量
"""seq = seq.upper() #全部轉換為大寫
return round((seq.count('c') + seq.count('g')) / float(len(seq)),2)
#round 用於保留兩位小數,float將序列長度轉換為浮點型
infile = 'data/alignment.sam'
outfile = 'output/gc.txt'
with open(infile) as in_handle, open(outfile,'w') as out_handle:
out_handle.write('read_id\tseq\tgc\n') #表頭
cnt = 0
for line in in_handle:
if cnt != 0: #用於有列名時去掉第一行列名
row = line.split('\t') #返回列表
read_id = row[0]
seq = row[9]
gc = cal_gc(seq)
#print([read_id, seq, gc]) #檢查
out_handle.write('%s\t%s\t%s\n' % (read_id,seq,gc)) # %s佔位符
cnt += 1
Windows的口令檔案SAM
windows對使用者賬戶的安全管理使用了安全賬號管理器 security account manager,簡稱sam 的機制 sam檔案即賬號密碼資料庫檔案。當我們登入系統的時候,系統會自動地和config中的sam自動校對,如發現此次密碼和使用者名稱全與sam檔案中的加密資料符合時,你就會順利登...
破解給定的SAM檔案
給你乙個sam檔案,如何提取出登入密碼?lmhash administrator 500 0182bd0bd4444bf867cd839bf040d93b c22b315c040ae6e0efee3518d830362b guest 501 aad3b435b51404eeaad3b435b5140...
如何改寫樹莓派下的硬碟檔案系統,以及samba共享
原來檔案系統位fat32,現在想改寫成ext3的步驟如下 1 檢視磁碟資訊 fdisk l2 使用parted工具 3 磁碟分割槽 4 建立資料夾並載入 mkdir mnt my hd mount dev sda1 mnt my hd 5 修改fstab檔案 nano etc fstab在fstab...