مشخصات مقاله
-
527
-
0.0
-
3174
-
0
-
0
آموزش قالب بندی خروجی در پایتون
قالب بندی (formatting) خروجی در آموزش Python
این بخش ماژول های پیشرفته ای که از ملزومات برنامه نویسی حرفه ای پشتیبانی می کند را پوشش می دهد. این ماژول ها به ندرت در کدهای کوچک استفاده می شوند.
ماژول reprlib نسخه ای از repr() را ارائه می کند که برای نمایش مختصر محفظه های (containers) بزرگ یا عمیقا تو در تو سفارشی شده است.
>>> import reprlib
>>> reprlib.repr(set('supercalifragilisticexpialidocious'))
"{'a', 'c', 'd', 'e', 'f', 'g', ...}"
ماژول pprint کنترل سطح بالاتری را برای چاپ اشیای داخلی(built-in) و نیز آنهایی که توسط کاربر تعریف شده اند، به صورت قابل خواندن برای مفسر ارائه می کند. زمانی که نتیجه طولانی تر از یک خط باشد، چاپگر زیبا (“pretty printer) برای واضح تر نشان دادن ساختار داده، بین خطوط وقفه ایجاد می کند و فرورفتگی هایی را اعمال می کند.
>>> import pprint
>>> t = [[[['black', 'cyan'], 'white', ['green', 'red']], [['magenta',
... 'yellow'], 'blue']]]
...
>>> pprint.pprint(t, width=30)
[[[['black', 'cyan'],
'white',
['green', 'red']],
[['magenta', 'yellow'],
'blue']]]
ماژول textwrap پاراگراف های متن را متناسب یا عرض صفحه نمایش داده شده قالب بندی می کند.
>>> import textwrap
>>> doc = """The wrap() method is just like fill() except that it returns
... a list of strings instead of one big string with newlines to separate
... the wrapped lines."""
...
>>> print(textwrap.fill(doc, width=40))
The wrap() method is just like fill()
except that it returns a list of strings
instead of one big string with newlines
to separate the wrapped lines.
ماژول locale به یک پایگاه داده ای از قالب های داده خاص فرهنگ، دسترسی دارد. ویژگی گروه بندی تابع قالب بندی locale ، روشی مستقیم برای قالب بندی اعداد با جداکننده های گروه ها، ارائه می کند.
>>> import locale
>>> locale.setlocale(locale.LC_ALL, 'English_United States.1252')
'English_United States.1252'
>>> conv = locale.localeconv() # get a mapping of conventions
>>> x = 1234567.8
>>> locale.format("%d", x, grouping=True)
'1,234,567'
>>> locale.format_string("%s%.*f", (conv['currency_symbol'],
... conv['frac_digits'], x), grouping=True)
'$1,234,567.80'