سؤال

أقوم بعمل برنامج يسأل عن مسار ، ويحتوي مسارات Windows على عوامل خلفية ، والتي يمكن تفسيرها على أنها تسلسل هروب بواسطة Python إذا كان الحرف التالي هو الحرف الخاطئ. لقد جربت string.replace () ولكنها لا تعمل حيث يتم تحويل هذه الانزلاق إلى تسلسل الهروب قبل تنفيذ وظيفة استبدال.

هل هناك طريقة لإزالتها وربما صنعها / بدلاً من ؟

هل كانت مفيدة؟

المحلول

إذا كنت تطلب من المستخدم الإدخال ، فسيذهب A إلى سلسلة كـ بشكل صحيح. فقط إذا قمت بتقييم سلسلة المستخدم بطريقة ما ، فسيحسب التراجع المتخلف على أنه شار للهروب. يجب أن تقلق فقط بشأن الهروب عندما تكتب سلاسل داخل الكود.

نصائح أخرى

لا ، لا يتم تفسير الانزلاق الخلفي على أنه تسلسل هروب إلا في بيثون مصدر الرمز. ما لم تكن eval () على المسار ، وهو أمر خاطئ ، لست متأكدًا من سبب وجود مشكلة.

استخدم مزدوج

str = 'c:\\dir\\file.txt'

print str.replace('\\','/')
print str

هنا نخرج

c:/dir/file.txt
c:\dir\file.txt
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top