Как разделить строку пробелом, чтобы строки не разбивались на каждый символ? - PullRequest
0 голосов
/ 11 мая 2019

это часть моих данных:

object 1 class gridpositions counts 47 47 48

origin -39.224729 -29.593729 -18.740000

я хочу разделить первую строку на пробел, чтобы получить: 'object', '1', 'class' ... но проблема в том, что я пытался

line.split()
re.split()

for line in open(input_file, "r").readlines()[0]:
    line_split=line.strip().split()

разбивает первую строку на каждый алфавит:

['o']
['b']
['j']
['e']
['c']
['t']
['', '']

я хочу получить число в первой строке 47,47,48. как я могу разделить первую строку на пробел, спасибо!

Ответы [ 2 ]

1 голос
/ 11 мая 2019

Вы перебираете символ за символом через первую строку.Попробуйте вместо этого:

with open(input_file, "r") as f:
    line_split = next(f).split()

Вы должны использовать with, чтобы освободить все ресурсы, используемые файлом.next(f) возвращает первую строку.

0 голосов
/ 13 мая 2019

Я только что понял, что допустил ошибку. Они разные:

#1. select the first line and 'for loop'is iterating each string in the first line
for line in open(input_file, "r").readlines()[0]:
#2. select the first line
for line in open(input_file, "r").readlines()[0:1]:

Второй тоже работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...