Как правильно избежать пути UNC для струнных литералов в Python, избегая двойных префиксов?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как правильно избежать пути UNC для струнных литералов в Python, избегая двойных префиксов?

Сообщение Anonymous »

Я работаю над функцией Python, которая преобразует пути файлов Windows в формат расширенной длины UNC и должным образом избегает их для строкового буквального представления в файлах конфигурации. Тем не менее, я сталкиваюсь с проблемами с обнаружением существующих префиксов UNC и предотвращением двойного разговора.def convert_to_unc_path(path: str) -> str:
if path.startswith(r"\\?\\"):
normalized = path
else:
normalized = r"\\?\\" + path

# Escape all backslashes for string literal representation
escaped = normalized.replace("\\", "\\\\")
return escaped
< /code>
Вот мои данные ввода < /p>
input_path = r"\\?\C:\Windows\system32\config\systemprofile\AppData\Local\temp\p\package_abc123\p"
expected_path = r"\\\\?\\C:\\Windows\\system32\\config\\systemprofile\\AppData\\Local\\temp\\p\\package_abc123\\p"

result = convert_to_unc_path(input_path)
print("Input:", repr(input_path))
print("Expected:", repr(expected_path))
print("Actual:", repr(result))
print("Match:", result == expected_path)
< /code>
Я сбегаю слишком много раз? Хотел бы немного ввода < /p>
Текущий результат: < /p>
'\\\\\\\\?\\\\\\\\\\\\\\\\?\\\\C:\\\\Windows\\\\system32\\\\config\\\\systemprofile\\\\AppData\\\\Local\\\\temp\\\\p\\\\package_abc123\\\\p'


Подробнее здесь: https://stackoverflow.com/questions/797 ... voiding-do
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»