كيف يمكنني التوقف عن IDLE من طباعة قوائم العملاقة؟
-
03-07-2019 - |
سؤال
وأحيانا كنت سوف تعمل مع، مثلا، قائمة الآلاف من البنود في IDLE، وبالصدفه طباعته إلى قذيفة. وعندما يحدث ذلك، فإنه تعطل أو على الأقل significaly جدا يبطئ IDLE. كما يمكنك أن تتخيل، وهذا غير مريح للغاية. هل هناك طريقة لجعله، بدلا من طباعة الأمر برمته، فقط أعطني تلخيص [1، 2، ...] الإخراج؟ أي مساعدة سيكون محل تقدير كبير.
المحلول
وكما ذكر أعلاه، في محاولة لوظيفة الطباعة حسب الطلب مثل:
def my_print(obj):
if hasattr(obj, '__len__') and len(obj) > 100:
print '... omitted object of %s with length %d ...' % (type(obj), len(obj))
else: print obj
نصائح أخرى
استخدم IPython كما قذيفة بدلا من ذلك.
هل يمكن استخدام وظيفة الطباعة حسب الطلب.
في بيثون 3، منذ الطباعة وظيفة، يجب أن تكون قادرة على "تجاوز" عليه. (ليس لدي تثبيته لذلك لا أستطيع ذلك في محاولة للتأكد.) ربما لا ينصح به للتطبيقات حقيقية ولكن إذا كنت مجرد محاولة الامور، فإنه سيكون بخير أنا أفترض.
ووسيذهب شيئا مثل:
def myprint(*args):
# write the function as described by other people
print = myprint
لا تنتمي إلى StackOverflow