جزئیات نرم افزار:
در XHPy گسترش نحو پایتون به طوری که قطعات XML تبدیل عبارات پایتون معتبر.
مزایای استفاده
و nbsp؛ * سادگی: ارسال منطق UI در ساده، نحو بیانی بدون نیاز به قالب های خارجی و یا زبان قالب.
و nbsp؛ * انعطاف پذیری: عبارات استفاده پایتون آزادانه در برچسب ها XHPy، و بالعکس.
و nbsp؛ * * * * امنیت: بهره مندی از فرار به صورت خودکار متن در برچسب ها XHPy.
و nbsp؛ * استفاده مجدد: ساخت اجزای قابل استفاده مجدد توسط subclassing: X: عنصر.
یک مثال
در bar.py:
از xhpy.init واردات register_xhpy_module
register_xhpy_module ('غذ')
واردات مواد غذایی
در foo.py:
از xhpy.pylib واردات *
کلاس: رابط کاربر: تولی (: X: عنصر):
& nbsp؛ از ویژگی لیست نوار
رده٪ جریان؛ لمس کنید و
و nbsp؛ دف ارائه (خود):
& nbsp؛ یک =
& nbsp؛ برای B در self.getAttribute ('نوار'):
& nbsp؛ در a.appendChild (
و nbsp؛ بازگشت
چاپ
ما در حال حاضر می تواند اجرا bar.py به عنوان یک اسکریپت پایتون نرمال:
$ bar.py پایتون
- 0 در
- 1 در
- 2
تبریک می گویم! شما فقط اولین قطعه خود را از XHPy نوشت.
نحو
XHPy می افزاید: برخی نحو جدید به پایتون. خط به خط زمان پخش!
از xhpy.init واردات register_xhpy_module
این مقدار دهی اولیه XHPy و اجازه می دهد تا شما را به ثبت نام ماژول به عنوان XHPy تفسیر شده است.
register_xhpy_module ('غذ')
در حال حاضر ماژول غذ در foo.py به عنوان XHPy زمانی که وارد تفسیر شده است. اگر مواد غذایی بسته بودند، همه از submodules آن نیز ثبت می شود. این برای ثبت نام کتابخانه UI مفید است.
واردات مواد غذایی
در واقع استفاده از XHPy، با این حال، شما احتمالا می خواهید کتابخانه هسته:
از xhpy.pylib واردات *
در حال حاضر شما دسترسی به تمام استاندارد HTML 4.0 عناصر داشته باشد،: X: کلاس پایه عنصر (این چیزی است که شما ساخت قطعات سفارشی در بالای!)، و برخی از آب و برق.
کلاس: رابط کاربر: تولی (: X: عنصر):
فقط زیرطبقه:: X: عنصر ساخت قطعات جدید آسان است. برای کلاس جزء خود را به ثبت نام، باید آن را با شروع: - این به وضوح قطعات خود را از کلاس های پایتون معمولی متمایز می کند.
ویژگی ها نوار
این اعلامیه ویژگی است، به این معنی که: رابط کاربر: تولی اجازه می دهد تا نوار صفات در
بعد از - مانند XHP، XHPy با استفاده از XML نحو ویژگی.
رده٪ جریان
این یک اعلامیه دسته بندی است -: رابط کاربر: تولی بخش٪ جریان است. دسته بندی ها در درجه اول به عنوان یک راه برای شناسایی عناصر که بدون استفاده از وراثت مشابه هستند مفید. به عنوان مثال، برچسب <> در pylib.html است
کودکان (PCDATA موجود |٪ جریان) *
نشان می دهد که کودکان خود را یا باید به صورت حاوی متن و یا از رده٪ جریان باشد. (بنابراین ما می توانیم
دف ارائه (خود):
هنگامی که شما نسخه قابل چاپ: X: عنصر (یا خ تماس بگیرید بر روی آن)، ارائه متد () استناد شده است. این است که در آن شما قرار داده منطق UI خود را.
=
برای ب در self.getAttribute ('نوار'):
& nbsp؛ در a.appendChild (
بازگشت
در اینجا،
- که اجازه می دهد تا شما را به ساخت یک لیست نامرتب از یک لیست پایتون است. عناصر استاندارد HTML مانند
- به طور خودکار ارائه - به جز که، در XHPy، شما می توانید عبارات پایتون در برچسب ها، به طوری که
{ب}
توسط ارزش B جایگزین شده است. توجه داشته باشید که استفاده از getAttribute () و appendChild ():
self.getAttribute ('نوار')
بازخوانی ارزش نوار ویژگی (در این مورد، دامنه (3))، در حالی که
a.appendChild ( - {ب} در)
- {ب} در به عنوان یک کودک از یک =
- و
اضافه می کند
XHPy است تا حد زیادی فعال XHP بر اساس. برای جزئیات بیشتر در مورد دوم، `ویکی XHP
و nbsp؛ * نام کلاس XHPy ممکن است مورد استفاده طبقات پایتون در هر نقطه معمولی می تواند.
و nbsp؛ * برچسب XHPy نادیده فضای سفید داخلی، اما باید از خارج اطاعت قوانین دندانه و خط ادامه.
بیشتر در آخرین نقطه:
دف غذ (عکاس هنگام عکسبرداری):
& nbsp؛ در بازگشت از >
نوار دف (عکاس هنگام عکسبرداری):
و nbsp؛ بازگشت
و nbsp؛ <عکاس هنگام عکسبرداری = {عکاس هنگام عکسبرداری}> >
معتبر هستند، در حالی که
دف غذ (عکاس هنگام عکسبرداری):
و nbsp؛ بازگشت
و nbsp؛ <عکاس هنگام عکسبرداری = {عکاس هنگام عکسبرداری}>
و nbsp؛ >
نه، آن را به عنوان dedent اضافی بعد از > معرفی می کند.
چگونه کار می کند
وقتی تو
واردات xhpy.init
XHPy نصب قلاب واردات. این تله اظهارات واردات پس از آن، در حال اجرا آنها را از طریق یک پیش پردازنده که تجزیه superset از پایتون قلاب. این پیش پردازنده ترجمه برچسب ها XHPy و نام کلاس به معتبر پایتون، سپس کد ترجمه شده به دامنه ماژول اجرا می کند.
این شبیه به چگونگی XHP کار می کند، به جز است:
و nbsp؛ * با، به عنوان مثال، pythonenv، شما همیشه می توانید XHPy حتی بدون دسترسی به سیستم گسترده دایرکتوری نصب و راه اندازی بسته بندی پایتون استفاده می کنند؛
و nbsp؛ * * * * به طور پیش فرض، پایتون کامپایل بایت کد .pyc فایل ها از ماژول های خود را، به طوری که قبل از پردازش تنها باید انجام شود یک بار هنگامی که یک ماژول برای اولین بار وارد
مورد نیاز:
پایتون.
نظر یافت نشد