나는이 버전의 다른 버전처럼 보이는 10k os 문자열의 목록을 가지고 있습니다. (HN5ML6A02FL4UI_3 [14 숫자 또는 letters_1-6] _1 ~ _6을 제외하고는 중복됩니다.처음 14자를 읽고, 고유 한 것을 기반으로하고, 중복을 파싱하는 파이썬 코드
나는 이것을 나열하고 중복 된 14 문자 (_1-_6 이전)를 제거하는 방법을 찾으려고합니다.
HN5ML6A02FL4UI_3
HN5ML6A02FL4UI_1
HN5ML6A01BDVDN_6
HN5ML6A01BDVDN_1
HN5ML6A02GVTSV_3
예 내가 등록 표현식을 사용하여 스크립트의 버전을 시도
HN5ML6A01AJOJU_5
HN5ML6A02JI8VU_1
HN5ML6A02JPGQ9_5
HN5ML6A01CUDA2_5
HN5ML6A01CUDA2_1
var n = /\d+/.exec(info)[0];
내 앞의 질문에 게시 된 다음에. 나는이 스크립트를 사용하고 난 아직도 정확한 출력을 받고 있지 않다 최근에
How can I strip the first 14 characters in an list element using python?
: 및
은 또한에서 코드의 수정 된 버전을 사용했다.
import os, re
def trunclist('rhodopsins_play', 'hope4'):
with open('rhodopsins_play','r') as f:
newlist=[]
trunclist=[]
for line in f:
if line.strip().split('_')[0] not in trunclist:
newlist.append(line)
trunclist.append(line.split('_')[0])
print newlist, trunclist
# write newlist to file, with carriage returns
with open('hope4','w') as out:
for line in newlist:
out.write(line)
내 inputfile.txt
는 중요한 부분이 문자는 위의 목록과 같은 데이터의 10K보다 다음의 파일을 출력의 '_'(밑줄)의 전면에 포함 고유 한 ABCD12356_1
. 누군가 도움을 줄 수 있습니까?
도움 주셔서 감사합니다.
에 일을 내가 원하는 것 출력 파일 HN5ML6A02FL4UI_3 HN5ML6A01BDVDN_6 HN5ML6A02GVTSV_3 HN5ML6A01CUDA2_1 HN5ML6A02JPGQ9_5 HN5ML6A02JI8VU_1 HN5ML6A01AJOJU_5에 슬릿 팅된다 – hdliv