Как отсортировать целые числа и строки из текстового файла?

Поэтому я пытаюсь создать программу, которая читает текстовый файл и выводит строки и целые числа в некоторых сортировках.

Я хотел бы распечатать, в какой строке были строки, а также создать списки со всеми целыми числами в текстовом файле. (Для дальнейшего использования целых чисел, чтобы найти мин, макс, медиана и т. Д.)

Я попытался и застрял совершенно неудачно.

def readfile(file):
    try:
        f = open(file, 'r')
        fil = f.readlines()
        f.close()
        return fil
    except IOError:
        print('fil finns inte')
        return None

def rader(rowlist):
    k=rowlist
    l=[]
    try:
        for i in k:
            l.append(int(i.strip()))
            return l
    except:
        print("sds")

Таким образом, этот код, очевидно, еще не закончен, а также в настоящее время выполняется с doctest. Я застрял в той части, где я хочу отсортировать целые числа в список и строки, чтобы распечатать вместе с номером строки.

Таким образом, я бы хотел цикл, который просматривает список документа, когда он попадает в целое число, добавляет его в список, а когда он попадает в строку, останавливается, только в исключающем случае или что-то в этом роде, и печатает вычеркните вместе с номером строки (i).

Как мне это создать? Я не ищу очень сложную программу, а более простой цикл, который я просто не вижу в своей голове, как писать код.

Вы действительно, проблемный студент.

1 ответ

Пожалуйста, посмотрите пример:

def get_integer_or_none(text):
    '''
    Returns integer from text or None if text is not an integer.
    '''
    try:
        return int(text)
    except ValueError:
        return None

for text in ('1', 'some text', '2 not an integer', '-1000'):
    integer_value = get_integer_or_none(text)
    if integer_value is not None:
        print('This text "{}" is an integer ({})'.format(text, integer_value))
    else:
        print('This text "{}" is not an integer'.format(text))
Другие вопросы по тегам