Я новичок в python, и у меня возникли проблемы с удалением некоторых элементов из списка с помощью функции del
. Я передаю ему простой текстовый файл с несколькими строками, создаю список строк, используя splitlines()
, а затем пытаюсь удалить первые несколько элементов, используя del
.
Однако, когда я запускаю его, он просто распечатывает список без удаления строки. Однако я могу удалить все, используя del inputfile[:]
. Он не выдает ошибок, и я немного застрял.
class Zero_Check(object):
def __init__(self):
self.path2file='C:\File2check\Output.txt'
def Parser(self):
print('parser')
inputfile = open(self.path2file).read().splitlines()
del inputfile[4]
print(inputfile)
#for line in inputfile:
# print(line)
if __name__=='__main__':
check=Zero_Check().Parser()
Том на диске C — серийный номер тома OSDisk — F0A9-9FB7.
Каталог C:\File2check
08/10/2015 16:36 .
08/10/2015 16:36 ..
10.08.2015 16:28 0 1.txt
10.08.2015 16:28 0 10.txt
10.08.2015 16:28 0 11.txt
10.08.2015 16:31 2 411 884 12.txt
10.08.2015 16:31 2 411 884 13.txt
10.08.2015 16:31 2 411 884 14.txt
10.08.2015 16:31 2 411 884 15.txt
...
выход -
[' Volume in drive C is OSDisk', ' Volume Serial Number is F0A9-9FB7', '', ' Directory of C:\\File2check', '08/10/2015 16:36 <DIR> .', '08/10/2015 16:36 <DIR> ..', '08/10/2015 16:28 0 1.txt', '08/10/2015 16:28 0 10.txt', '08/10/2015 16:28 0 11.txt', '08/10/2015 16:31 2,411,884 12.txt', '08/10/2015 16:31 2,411,884 13.txt', '08/10/2015 16:31 2,411,884 14.txt', '08/10/2015 16:31 2,411,884 15.txt', '08/10/2015 16:31 2,411,884 16.txt', '08/10/2015 16:31 2,411,884 17.txt', '08/10/2015 16:33 1,457,843 18.txt', '08/10/2015 16:31 2,411,884 19.txt', '08/10/2015 16:28 0 2.txt', '08/10/2015 16:31 2,411,884 20.txt', '08/10/2015 16:31 2,411,884 21.txt', '08/10/2015 16:33 1,457,843 22.txt', '08/10/2015 16:33 1,457,843 23.txt', '08/10/2015 16:33 1,457,843 24.txt', '08/10/2015 16:28 0 3.txt', '08/10/2015 16:28 0 4.txt', '08/10/2015 16:28 0 5.txt', '08/10/2015 16:28 0 6.txt', '08/10/2015 16:28 0 7.txt', '08/10/2015 16:28 0 8.txt', '08/10/2015 16:28 0 9].txt', '08/10/2015 16:36 0 Output.txt', ' 25 File(s) 27,538,328 bytes', ' 2 Dir(s) 593,421,463,552 bytes free']
def zero_check_parser(file_path):
(переименуйте функцию, как вам угодно). - person Markus Meskanen   schedule 08.10.2015del
— это не функция, а оператор. - person ForceBru   schedule 08.10.2015readlines()
вместоread().splitlines()
:inputfile = open(self.path2file).readlines()
- person Christian Alis   schedule 08.10.2015dir
) - person Peter Wood   schedule 08.10.2015C:\foo\bar
, который существует, но обратный слеш означает, что он пытается открыть файл вC:\foo<ASCII backspace>ar
. Необработанные строки создаются путем добавления к строке префиксаr
, например.r'C:\File2check\Output.txt'
. - person ShadowRanger   schedule 08.10.2015