Вы все равно можете использовать file.seek (0). Например, посмотрите на следующее:
import csv
file_handle = open("somefile.csv", "r")
reader = csv.reader(file_handle)
# Do stuff with reader
file_handle.seek(0)
# Do more stuff with reader as it is back at the beginning now
Это должно работать, поскольку csv.reader работает с тем же.
Этот вопрос подходит к одной из моих старых заметок. Я надеюсь, что эта иллюстрация поможет:
<E>
является объявлением параметра общего типа. Это означает, что «этот метод имеет параметр одного типа, называемый E
, который может быть любого типа».
Это не возвращаемый тип - он приходит после объявления параметра типа, непосредственно перед именем метода. Таким образом, тип возврата метода printArray
в вашем вопросе все еще равен void
.
См. раздел 8.4 JLS для более подробной информации о объявлениях методов.
Это не тип возвращаемого объекта. Это указывает на то, что E
в сигнатуре метода является универсальным типом, а не конкретным типом. Без этого компилятор будет искать класс с именем E
для аргумента метода.
E используется в качестве заполнителя для фактического типа, который будет передан функции Gen при вызове этой функции.
предположим, что E можно заменить на целое число
< E> называется параметром формального типа. Это не тип возврата метода. В основном это говорит о том, что метод может принимать в качестве параметров массивы различных типов (E [] inputArray).