Rett-oo
@Rett-oo

Как взять часть значения из списка?

Необходимо создать qrc файл где будет указаны адреса расположения каждого файла. Т.к. файлов много решил пройтись циклом for для упрощения, но не могу понять как из каждого значения достать только тот путь что находится после определённой папки. Надеюсь понятно объяснил. .Код выглядит вот так:

import os

spisok = []

for adress, dirs, files in os.walk("C:\\Users\\user\\Desktop\\Python\\Anno1800Tool\\resourсes\\icons\\Goods"):
	for i in files:
		path = os.path.join(adress,i)
		spisok.append(path)

a = open("C:\\Users\\user\\Desktop\\filespath.txt","w","utf-8")
for x in spisok:
	for r in x:
		r[r.find("Anno1800Tool")+1:]	
		a.write(r+ '\n')

a.close()

Вопрос 1: Почему появляется ошибка
File "C:\Users\user\Desktop\filesearch.py", line 10, in
a = open("C:\\Users\\user\\Desktop\\filespath.txt","w","utf-8")
TypeError: an integer is required (got type str)? Почему требует тип данных число?
Вопрос 2: Каким образом я могу сделать срез и записать в конечный текстовый файл только пути после Anno1800Tool\?
  • Вопрос задан
  • 84 просмотра
Пригласить эксперта
Ответы на вопрос 1
@inworkl
Бродяга
Вопрос 1: Почему появляется ошибка

Ошибка появляется потому, что по умолчанию третим параметром функции open идет буферизация(buffering), который просит тип данных int
Тебе нужно прямо укзать, что ты задаешь кодировку, encoding='utf-8'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы