سؤال

هل هناك طريقة للحصول على object.__doc__ كما سلسلة الخام ، وبصرف النظر عن إضافة 'r' في الجبهة من doctring نفسها في شفرة المصدر ؟

لدي اللاتكس رمز داخل ' ، '\f إلخ خلق مشاكل.

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

المحلول

لا يوجد مثل هذا الثعبان نوع "الخام سلسلة" -- هناك الخام سلسلة حرفية, التي هي واحدة فقط بناء الجملة نهج (من كثير) تحديد الثوابت (أي الأحرف) التي هي من أنواع السلاسل.حتى "الحصول على" شيء "سلسلة الخام" فقط لا معنى له.يمكنك الكتابة docstrings الخام سلسلة حرفية (أي مع البادئة r - هذا بالضبط ما يدل الخام سلسلة حرفية معينة الجملة التي تحدد مثل هذه المستمر إلى Python مترجم) ، أو مضاعفة أي الخطوط المائلة العكسية في (وسيلة بديلة لتحديد المستمر بما في ذلك سلاسل أحرف الخط المائل العكسي), ولكن هذا لا علاقة له مع "الحصول على" لهم بطريقة أو بأخرى.

نصائح أخرى

والفرق بين سلسلة الخام وخلاف ذلك هو مجرد مسألة تركيب الحرفي شفرة المصدر. مرة واحدة تحليل، لا يوجد "الخام" الكائن السلسلة. ونتيجة لrepr(object.__doc__) يكون دائما بحيث يمكنك نسخ ولصق النتيجة في السيناريو مصدر الثعبان والحصول على السلسلة الأصلية.

والنظر فيما يلي:

>>> def foo():
...     'foo\nbar'
...     pass
...
>>> foo.__doc__
'foo\nbar'
>>> print foo.__doc__
foo
bar
>>>

لا، لديك لإضافة ص. إذا كنت لا تضيف ص، وليس هناك طريقة يمكنك أن تكون على يقين من أن نعود السلسلة الأصلية بغض النظر عن ما تفعله.

إذا كنت لا تحب سلاسل الخام البديل الآخر هو الهروب الخطوط المائلة العكسية الخاصة بك في السلاسل مع مائل إضافية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top