سؤال

لقد حصلت على هذه القطعة من التعليمات البرمجية:

giveacodicetagpre.

من الوظيفة "func" أود استخراجها:

giveacodicetagpre.

أو شيء من هذا القبيل:

giveacodicetagpre.

تحرير

بعض الخلفية لشرح لماذا أعتقد أنني بحاجة إلى القيام بذلك

أريد تحويل رمز وظيفة بيثون تافهة إلى صيغة جدول البيانات.

لذلك أحتاج إلى تحويل:

giveacodicetagpre.

إلى:

giveacodicetagpre.

نموذج جداول البيانات http://img441.imageshack.us/img441/1451/84516405. PNG

** تم تحريرها مرة أخرى *

ما لدي حتى الآن.

البرنامج أدناه المخرجات:

giveacodicetagpre.

الرمز:

giveacodicetagpre.

وجدت بعض الموارد هنا: بيثون داخلي: العمل مع بيثون asts أمسكت وحدة عمل كداوي العمل هنا .

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

المحلول

giveacodicetagpre.

الإخراج:

giveacodicetagpre.

نصائح أخرى

أنا لست متأكدا من السبب في أنك تحتاج إلى إعادة استخدام الأسماء، وسيلة خام للغاية للحصول على جميع الأسماء والنقاط في الوظيفة هي

giveacodicetagpre.

الإخراج:

giveacodicetagpre.

قد يكون من الممكن تحسين ذلك عن طريق قراءة شجرة بناء الجملة أكثر أناقة، وأنا أستخدم المحلل المحلل بدلا من وحدة AST لأنني على Python 2.5

لم أستخدم الوحدة النمطية AST الجديدة بعد، لكنني أعمل رمز العمل الذي يستخدم التحويل البرمجي الأكبر سنا لتحقيق شيء مماثل:

giveacodicetagpre.

code إعادة صياغة قليلا، ربما قدمت أخطاء غير مقصودة.آمل أن يمنحك هذا الفكرة العامة: تحتاج إلى زيارة العقد على حد سواء واسم العقد وإنشاء أسماء منقط، وكذلك التعامل مع حقيقة أنك سترى كل القيم الوسيطة أيضا (مثل "foo" و "foo.bar").

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