PYHINTS Telegram 331
Python Hints
Goose Typing رو بعنوان runtime type check بهش اشاره می‌کنند؛ دلیلش هم توی عکس واضح هست. اما دقت کنید که من برای isinstance از from collection.abc import Sequence چرا این مورد وجود داره؛ برطرف کردن مشکلاتی که Duck typing بوجود میاره همونطور که دیدیم برای…
اول با تصویر ۲ شروع کنیم (بالای کد 2 کامنت شده)
از دیگر مزایای Goose typing همین مورد هست وقتی برای اطمینان از Interface میاید و کلاس‌های فریمورکی که می‌نویسید رو به ABC ها وصل می‌کنید (منظورم Inheritance هست).
دقت کنید اگر من __len__ رو پیاده‌سازی نکنم بهم ارور میده؛ به عمد ارور رو گذاشتم که باهاش آشنا بشید.
برای رفع این مشکل پایتون و Goose Typing و البته ABC من رو مجبور می‌کنند که __len__ رو پیاده‌سازی کنم.
پس برای همین runtime type checking هم داریم توی پایتون اما مفهومش با زبان‌های دیگه کمی فرق داره که حالا همگی دلیلش رو می‌دونیم.
👍2443



tgoop.com/pyHints/331
Create:
Last Update:

اول با تصویر ۲ شروع کنیم (بالای کد 2 کامنت شده)
از دیگر مزایای Goose typing همین مورد هست وقتی برای اطمینان از Interface میاید و کلاس‌های فریمورکی که می‌نویسید رو به ABC ها وصل می‌کنید (منظورم Inheritance هست).
دقت کنید اگر من __len__ رو پیاده‌سازی نکنم بهم ارور میده؛ به عمد ارور رو گذاشتم که باهاش آشنا بشید.
برای رفع این مشکل پایتون و Goose Typing و البته ABC من رو مجبور می‌کنند که __len__ رو پیاده‌سازی کنم.
پس برای همین runtime type checking هم داریم توی پایتون اما مفهومش با زبان‌های دیگه کمی فرق داره که حالا همگی دلیلش رو می‌دونیم.

BY Python Hints






Share with your friend now:
tgoop.com/pyHints/331

View MORE
Open in Telegram


Telegram News

Date: |

Ng, who had pleaded not guilty to all charges, had been detained for more than 20 months. His channel was said to have contained around 120 messages and photos that incited others to vandalise pro-government shops and commit criminal damage targeting police stations. Concise Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. Clear Ng was convicted in April for conspiracy to incite a riot, public nuisance, arson, criminal damage, manufacturing of explosives, administering poison and wounding with intent to do grievous bodily harm between October 2019 and June 2020.
from us


Telegram Python Hints
FROM American