У меня есть файл следующего формата в файле filename.txt.
h:\abc\abc_Foldhr_1\hhhhhhhhhh8db
h:\abc\abc_Foldhr_1\hhhhhhhhhh8dc
h:\abc\abc_Foldhr_1\hhhhhhhhhh8dx
h:\abc\abc_Foldhr_1\hhhhhhhhhh8du
h:\abc\abc_Foldhr_1\hhhhhhhhhh8d4
h:\abc\abc_Foldhr_1\hhhhhhhhhh8d5
h:\abc\abc_Foldhr_1\hhhhhhhhhh8d6
h:\abc\abc_Foldhr_1\hhhhhhhhhh8d7
h:\abc\abc_Foldhr_1\hhhhhhhhhh8d8
Я смог хорошо его прочитать, но не смог сохранить в фрейме данных pandas, списке или словаре.
import pandas as pd
#data = pd.read_excel ('/home/home/Documents/pythontestfiles/HON-Lib.xlsx')
data = pd.read_table('/home/home/Documents/pythontestfiles/filename.txt', delim_whitespace=True, names=('A'))
df = pd.DataFrame(data, columns= ['A'])
print(df)
и хотел бы указать имя файла только как
hhhhhhhhhh8db
.
.
.
hhhhhhhhhh8d6
hhhhhhhhhh8d7
hhhhhhhhhh8d8
цель хранения в любом фрейме данных или словаре - сравнить результат с файлом excel.






Использование split():
res = []
with open('filename.txt', 'r') as file:
content = file.readlines()
for line in content:
# print(line.split('\\')[-1]) # to print each name
res.append(line.split('\\')[-1]) # append the name to the list
print(res)
РЕДАКТИРОВАТЬ:
Разрабатывая данный ответ, метод split(), применяемый к строке, разбивает ее на \\. Рассмотрим следующий пример:
s = 'h:\abc\abc_Foldhr_1\hhhhhhhhhh8db'
print(s.split('\\'))
Что дает вывод:
['h:\x07bc\x07bc_Foldhr_1', 'hhhhhhhhhh8db']
Индекс [-1] захватывает последний элемент в нем, поэтому:
print(s.split('\\')[-1])
Даст:
hhhhhhhhhh8db
я не уверен с использованием -1. Пожалуйста, поделитесь своими мыслями.
@user3256224 user3256224 функция split() в основном разбивает строку на \\ и создает ее список. [-1] захватывает последний элемент в списке, т.е. hhhhhhhhhh8db
@user3256224 user3256224 также добавил редактирование с объяснением.
Ищите
split()