Это очень похоже на домашнюю работу, которую вы не понимаете. Я предлагаю немного больше изучить, как работает чтение файлов. Тем не менее, в посте вы говорите: «... Я передаю файл в качестве аргумента, который имеет такую структуру:»
Chr Start End
chr4 153245445 153245445
Затем вы читаете файл с:
with open(o.query) as fin:
# vcf file
for line in fin:
line = line.rstrip().split('\t')
chr = line[0]
try:
pos =int(line[1]) - 1
except:
raise Exception("vcf header should be expluded", o.query)
При первом проходе через l oop строка будет содержать «Chr Start End». После того, как вы очистите его и разделите на части, строка [1] будет «Пуск». Ошибка - в частности, ValueError - будет возникать при попытке преобразовать ее в целое число.
Как отметил @greencloakguy в комментарии, вам нужно пропустить эту строку заголовка, что можно сделать, вставив читать строку между оператором with и для l oop.
with open(o.query) as fin:
# vcf file
fin.readline()
for line in fin:
line = line.rstrip().split('\t')