0Pricing
Flask Academy · درس

محولات الأنواع: int وfloat وstring وpath

قيّد أجزاء URL باستخدام المحولات المضمّنة.

محولات الأنواع: int وfloat وstring وpath درس مجاني في Flask Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Flask Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Flask Academy 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Strings Are Not Always Enough

Captured values default to strings, but /post/42 should give a number, not text. A converter tells Flask what type to expect in that segment.

Converter Syntax

Put the converter name before the variable with a colon. The pattern is <converter:name>, and Flask applies it before calling your view.

@app.route('/post/<int:post_id>')
def show(post_id):
    return str(post_id + 1)

The int Converter

Use int to capture whole numbers. /post/42 hands your view the integer 42, so you can do math without calling int() yourself. 🔢

@app.route('/page/<int:n>')
def page(n):
    return f'Page {n}'

int Rejects Non-Numbers

A converter also filters URLs. /page/abc will not match an int route, so Flask returns 404 instead of crashing inside your function.

The float Converter

Use float for decimal numbers like prices or ratings. /rate/4.5 gives you the float 4.5, ready for arithmetic right away.

@app.route('/rate/<float:score>')
def rate(score):
    return str(score * 2)

The string Converter

string is the default: it accepts any text but stops at a slash. You rarely write it explicitly since plain <name> already behaves this way.

@app.route('/tag/<string:label>')
def tag(label):
    return label

The path Converter

Use path when the value can contain slashes, like a folder route. Unlike string, it captures /docs/intro/setup as one whole value.

@app.route('/files/<path:filepath>')
def serve(filepath):
    return filepath

Pick the Right Tool

Match the converter to your data: int for ids, float for decimals, string for words, path for slashed routes. The right choice prevents bad input early.

Converters Validate for You

By rejecting mismatched URLs with a 404, converters act as a first line of validation. Your view only runs when the type already fits.

Combine in One Route

You can mix converters across segments. Here an int id and a string tab live in the same path, each typed independently.

@app.route('/user/<int:uid>/<tab>')
def view(uid, tab):
    return f'{uid}:{tab}'

Negatives and Edge Cases

The built-in int converter matches only non-negative whole numbers by default. For minus signs or stricter rules, you would write a custom converter later.

Quick Check

Which converter lets a captured value include slashes, like docs/intro/setup?

Recap: You Typed Your URLs

Converters give captured values a type and reject bad input with a 404. Remember int, float, string, and path. Next: building URLs safely. 🧭

الأسئلة الشائعة

هل درس «محولات الأنواع: int وfloat وstring وpath» مجاني؟

نعم — نص درس «محولات الأنواع: int وfloat وstring وpath» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Flask Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Flask Academy 4 دروس في المجموع.

ماذا ستتعلم في «محولات الأنواع: int وfloat وstring وpath»؟

قيّد أجزاء URL باستخدام المحولات المضمّنة. تتمرن على Flask Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Flask Academy؟

لا تُشترط خبرة سابقة. Flask Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «محولات الأنواع: int وfloat وstring وpath»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Flask Academy هذا؟

نعم. كل درس في Flask Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. التقاط المتغيرات من المسار
  2. محولات الأنواع: int وfloat وstring وpath
  3. بناء عناوين URL باستخدام url_for
  4. الشرطات المائلة الختامية وسلوك إعادة التوجيه
← العودة إلى Flask Academy