| کانال توسعه‌دهندگان پایتون |
6.68K subscribers
41 photos
2 videos
4 files
43 links
⭕️ کانال توسعه‌دهندگان پایتون دولوپیکس

💠 دولوپیکس | جامعه توسعه‌دهندگان ایرانی

💎 @Developix
🚀 Developix.ir

📌 پشتیبانی و تبلیغات:
@DevelopixSupport
Download Telegram
🔢 تبدیل عددهای نوشته‌شده با حروف به عدد واقعی در پایتون!

با استفاده از کتابخونه‌ی numerizer می‌تونید عددهایی که به صورت متنی نوشته شدن (مثل four hundred and sixty one) رو به عدد واقعی تبدیل کنید 🔥

مثلاً:
from numerizer import numerize

print(numerize('four hundred and sixty one'))
# '461'

print(numerize('four hundred sixty one'))
# '461'

print(numerize('four sixty one'))
# '461'

print(numerize('four sixty-one'))
# '461'

📘 این کتابخونه به‌صورت خودکار انواع حالت‌های نوشتاری عددها رو تشخیص میده و اون‌ها رو به عدد صحیح تبدیل می‌کنه.
خیلی کاربردیه وقتی کارتون با پردازش متن (NLP) یا ورود داده‌های متنی هست.

کتابخونه‌ی numerizer فقط با عددهای انگلیسی کار می‌کنه (مثل “four hundred and sixty one”)
ولی برای اعداد فارسی یا متنی فارسی (مثل «چهارصد و شصت و یک») هنوز کتابخونه‌ی مستقیمی مثل numerizer وجود نداره که دقیق و کامل کار کنه.
با این حال، چند تا روش و راه‌حل کاربردی هست:

🧩 روش ۱: استفاده از کتابخونه‌ی آماده برای فارسی
pip install text2numfa

سپس:
from text2numfa import text2num

print(text2num("چهارصد و شصت و یک")) # 461
print(text2num("دوازده هزار و پانصد و چهل")) # 12540

پشتیبانی از اعداد فارسی
دقیق و ساده
نسبتاً کمتر شناخته‌شده و ممکنه در بعضی حالت‌ها خطا بده

🧩 روش ۲: استفاده از مدل‌های NLP (اگر خواستی هوشمندتر باشه)
مثلاً با مدل‌های فارسی HuggingFace می‌تونی متن رو تجزیه و معنی عدد رو پیدا کنی، ولی این برای پروژه‌های پیشرفته‌تره (مثلاً چت‌بات یا پردازش زبان طبیعی).

🧩 روش ۳: ساخت تابع ساده خودت
برای پروژه‌های کوچک، می‌تونی خودت یک دیکشنری بنویسی:
numbers = {
"یک": 1, "دو": 2, "سه": 3, "چهار": 4, "پنج": 5,
"شش": 6, "هفت": 7, "هشت": 8, "نه": 9, "ده": 10,
"صد": 100, "هزار": 1000
}

def text_to_num_fa(text):
parts = text.split(" و ")
total = 0
for part in parts:
for key, value in numbers.items():
if key in part:
total += value
return total

print(text_to_num_fa("چهارصد و شصت و یک"))

البته این نسخه‌ی ساده است و میشه خیلی حرفه‌ای‌ترش کرد تا عددهای ترکیبی رو درست محاسبه کنه.

🔖 #Python, #پایتون

👤 Charisma

💎 Channel: @DevelopixPython
👍22👎145🔥1
#سوال

🔶 توضیح تصاویر:
با توجه به بنچمارک تصویر اول (P1) که تقریبا برابر با 6 ثانیه است نتیجه مورد انتظار در تصویر دوم (P2) با در نظر گرفتن اینکه دو تابع با پردازش یکسان فراخوانی شده و به دو thread مجزا ارسال شده، عدد مورد انتظار ~6 ثانیه است ولی این عدد تقریبا دو برابر نتیجه بنچمارک قبلیه که غیرقابل انتظاره.‌ در ادامه تصویر سوم‌ (P3) با قرار دادن تأخیر ۶ ثانیه داخل بلاک task_1 انتظار میره نتیجه برابر با 12 + 6 ثانیه باشه (با توجه به نتایج تصاویر قبلی) ولی این اتفاقا نمیفته.


🔶 سوال:
دلیل دو برابر شدن بنچمارک (P2) و عدم اعمال شدن تاخیر ۶ ثانیه‌ی (P3) را توضیح بدید؟



🔖 #Python, #پایتون

👤 ȺʍìɾⱮօհąʍʍąժ

💎 Channel: @DevelopixPython
👍74🔥2👎1