в первой строке получили из файла элементы, запомнили в f
скорее всего они там находятся в формате str((думаю в файле были цифры разделенные пробелами)
соответственно сейчас у нас f представляет строку состоящую из чисел разделенных пробелами
с f.split() разбиваем строку по определенными символам(символ указывается в кавычках внутри скобок), когда скобки пустые, разбивка происходит по пробелу
функция вернула нам массив, теперь f представляет массив из чисел в формате str
функция map в данной случае из формата str делает все элементы массива форматом int(в скобках функции указываем нужный формат, а через запятую объект)
однако функция map вернула нам f в формате map
соответственно используя list(f) мы приводим f к формату list(так можно делать со всеми типами данных, int(...), str(...) (если конечно приведение к другому типу возможно))
Дополню предыдущий ответ.
в первой строке получили из файла элементы, запомнили в f
скорее всего они там находятся в формате str((думаю в файле были цифры разделенные пробелами)
соответственно сейчас у нас f представляет строку состоящую из чисел разделенных пробелами
с f.split() разбиваем строку по определенными символам(символ указывается в кавычках внутри скобок), когда скобки пустые, разбивка происходит по пробелу
функция вернула нам массив, теперь f представляет массив из чисел в формате str
функция map в данной случае из формата str делает все элементы массива форматом int(в скобках функции указываем нужный формат, а через запятую объект)
однако функция map вернула нам f в формате map
соответственно используя list(f) мы приводим f к формату list(так можно делать со всеми типами данных, int(...), str(...) (если конечно приведение к другому типу возможно))
Начнём с with
Данный код можно записать и без него, получится как-то так:
f = open("smth.txt")
a = f.read()
f.close()
В таком случае нужно будет указать, что мы завершили работу с файлом, используя метод close
Конструкция with сама завершает работу с файлом после всех инструкций, метод close не требуется
Ключевое слово as
Можно использовать не только с with
import random as rnd
Проще говоря, это "псевдоним" для удобной работы с файлом. Без as пришлось бы постоянно писать метод open вместо file
list – список
Упорядоченная изменяемая коллекция объектов произвольных типов
Сам же метод переводит итерируемый объект в список
a = list("abc") # => ["a", "b", "c"]
Метод map
Метод, с двумя аргументами:
Тип данных, в который нужно преобразовать каждый элемент объекта (массива)Сам объект (массив)Возвращает объект типа map
a = list(map(int, ["1", "2"])) # => [1, 2]
Метод split
Метод, "стирающий" указанный символ в качестве аргумента из строки
По умолчанию убирает переносы строк и пробелы
Возвращает объект типа list
a = "abc abc".split() # => ["abc", "abc"]