توسعه دهنده وب با Django framework

  1. دستور شروع یک پروژه جنگو جدید به نام “myproject” چیست؟

الف) django-admin.py startproject myproject ✅

ب) django-admin.py -start

ج) django.py startproject myproject

د) django.py -new myproject

 

  1. در جنگو چگونه می‌توانید تمام رکوردهای “کاربر” را از یک پایگاه داده معین بازیابی کنید؟

الف) User.objects.all() ✅

ب) User.objects.all()

ج) User.all_records()

د) User.object.all()

 

  1. دستور جنگو «manage.py validate» چه کاری انجام می‌دهد؟

الف) خطاهای موجود در نظرات شما را بررسی می‌کند

ب) خطاهای موجود در قالب‌های شما را بررسی می‌کند

ج) خطاهای موجود در کنترلرهای خود را بررسی می‌کند

د) خطاهای موجود در مدل‌های شما را بررسی می‌کند ✅

 

  1. کدام‌یک از گزینه‌های زیر در ابتدای ایجاد یک اپلیکیشن جدید به‌صورت پیش‌فرض ایجاد نمی‌شود و کاربر می‌بایست آن را ایجاد نماید؟

الف) Views.py

ب) Models.py

ج) Templates.py ✅

د) Apps.py

 

  1. فرض کنید برای صفحه درباره ما یک تابع در ویو با عنوان about us نوشته شده و قصد داریم در بخش urls.py به آن مسیردهی کنیم. کدام‌یک از گزینه‌های زیر با توجه به دستورالعمل جنگو به‌طور صحیح نوشته شده است؟

الف) rout(about_us, ‘about-us/’, name=’about-us’)

ب) path(‘about-us/’, about_us, name=’about-us’) ✅

ج) rout(‘about-us/’, about_us, name=’about-us’)

د) path(‘about-us/’, `about_us`, name=’about-us’)

 

  1. چگونه می‌توانید رفتار و ویژگی‌های اضافی یک کلاس جنگو را تعریف کنید؟

الف) __class __init:

ب) def Meta():

ج) def setUp():

د) class Meta: ✅

 

  1. فیلتر «ایمن» داخلی قالب جنگو چه می‌کند؟

الف) یک رشته را به عنوان عدم نیاز به فرار بیشتر HTML قبل از خروجی علامت‌گذاری می‌کند ✅

ب) از پردازش الگو خارج می‌شود و بقیه الگو را نادیده می‌گیرد

ج) تگ HTML بعدی را قفل می‌کند تا در اشکال‌زدایی مرورگر قابل تغییر نباشد

د) یک رشته را به عنوان نیاز به فرار HTML قبل از خروجی علامت‌گذاری می‌کند

 

  1. در کدام‌یک از بخش‌های زیر می‌توان تغییرات مربوط به پایگاه داده را انجام داد؟

الف) Admin.py

ب) Settings.py ✅

ج) Wsgi.py

د) Database.py

 

  1. برای اجرا کردن سرور و نمایش وب‌سایت طراحی شده توسط فریم‌ورک جنگو کدام دستور را می‌بایست تایپ نمود؟

الف) python manage.py makemigrations

ب) python manage.py startproject

ج) python manage.py startapp

د) python manage.py runserver ✅

 

  1. کدام‌یک از گزینه‌های زیر نقش view را در معماری MVC جنگو ایفا می‌کند؟

الف) Templates ✅

ب) Models

ج) Urls

د) Sites

 

  1. از دستور pip برای چه استفاده می‌شود؟

الف) نصب کتابخانه‌های پایتون ✅

ب) سازماندهی کتابخانه‌های پایتون

ج) مدیریت اطلاعات ورودی

د) حذف اطلاعات غیرضروری دریافتی template

 

  1. کدام کتابخانه جنگو یک محیط مجازی امن تست و توسعه شده می‌سازد؟

الف) virtualenv ✅

ب) Pyramid

ج) CubicWeb

د) Flask

 

  1. تنظیمات مربوط به دیتابیس‌ها (DATABASES) در کجا ذخیره شده است؟

الف) Models.py

ب) admin.py

ج) asgi.py

د) Settings.py ✅

 

  1. در کلید ENGINE که در settings.py در بخش تنظیمات دیتابیس قرار دارد، برای کدام دیتابیس از مقدار django.db.backends.mysql استفاده می‌شود؟

الف) MySQL MariaDB ✅

ب) MarjinzDB

ج) SQLite3

د) Marsqlacsess

 

  1. پس از آنکه کاربر آدرس یا منبع درخواستی خود را در مرورگر وارد می‌کند، در جنگو چه عملی رخ می‌دهد؟

الف) در بخش view.py درخواست کاربر پردازش می‌شود

ب) جنگو منبع درخواست کاربر را با الگوهای urls.py پروژه تطبیق می‌دهد ✅

ج) نتایج در template جنگو درج می‌شود

د) پس از مشخص شدن اپلیکیشن فراخوانی شده درخواست به سوی آن هدایت می‌شود

 

  1. دستور جنگو «manage.py shell» چه کار می‌کند؟

الف) یک خط فرمان را در هر $SHELL که محیط شما استفاده می‌کند، راه‌اندازی می‌کند.

ب) یک خط فرمان جنگو را با محیط پایتون شما از قبل بارگذاری شده راه‌اندازی می‌کند.

ج) یک خط فرمان پایتون را با محیط جنگو شما از پیش بارگذاری شده راه‌اندازی می‌کند. ✅

د) یک نسخه پایتونیک ویژه از پوسته Bash را بارگیری می‌کند.

 

  1. کدام یک از فریم‌ورک‌های زیر برای ساخت api نمی‌توان استفاده کرد؟

الف) django

ب) DRF

ج) Flask

د) laravel ✅

 

  1. مزایای استفاده از کتابخانه جنگو؟

الف) پشتیبانی یک زبان

ب) عدم پشتیبانی از پلتفرم‌های مختلف توسعه وب

ج) محیط توسعه ✅

د) واسط کاربری بیسیک

 

  1. کدام یک از مهم‌ترین اصول فلسفه طراحی کتابخانه جنگو نمی‌باشد؟

الف) کد نویسی کمتر

ب) طراحی تمیز

ج) توسعه سریع

د) اصل تکرار پذیری ✅

 

  1. منظور از گلوبال اسکوپ (global scope) چیست؟

الف) اشیاء محلی موجود در تابع کنونی است.

ب) اشیاء موجود در سرتاسر اجرای کد از زمان ایجاد آن‌ها است.

ج) اشیاء کلی ماژول کنونی است که در برنامه قابل دسترسی هستند. ✅

د) تمامی نام‌های توکار قابل فراخوانی در اپلیکیشن است.

 

  1. منظور از پاس در پایتون چیست؟

الف) در رابطه با ماژول‌ها و پکیج‌ها در این زبان برنامه‌نویسی است.

ب) سازوکاری هستند که امکان برنامه‌نویسی ماژولار در پایتون را فراهم می‌آورند

ج) نشان‌دهنده یک عملیات بی‌اثر (null operation) است ✅

د) احتمال خطا را کاهش می‌دهد.

 

  1. کدام گزینه نشان‌دهنده یک عملیات بی‌اثر است؟

الف) functions

ب) null operation ✅

ج) dot notation

د) from foo import

 

  1. به طور کلی می‌توان گفت که ماژول‌ها، فایل‌های پایتون دارای پسوند …… هستند.

الف) tif

ب) sys

ج) exe

د) py ✅

 

  1. تعریف ماژول‌ها چیست؟

الف) به عدم تصادم بین نام‌های ماژول‌ها کمک می‌کنند

ب) برای جلوگیری از تصادم بین نام‌های متغیر گلوبال کمک می‌کنند

ج) ماژول‌های درون پکیج به درون فضای نامی محلی، ایمپورت می‌شوند ✅

د) ماژول‌های درون پکیج به درون فضای نامی محلی، استیتمنت نمی‌شوند

 

  1. کدام‌یک از حلقه‌های تکرار زیر از لحاظ دستورالعمل جنگو به درستی در template نوشته شده است؟

الف) {% for athlete in athlete_list %}: <p>{{ athlete.name }}</p> {% endfor %}

ب) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p>

ج) { for athlete in athlete_list } <p>{{ athlete.name }}</p> endfor {

د) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p> {% endfor %} ✅

 

  1. اگر قصد داشته باشیم فقط یک آرایه را از پایگاه داده فراخوانی کنیم کدام‌یک از دستورات زیر صحیح می‌باشد؟

الف) ModelName.objects.all()

ب) ModelName.objects.one()

ج) ModelName.objects.get() ✅

د) ModelName.objects.filter()

 

  1. کدام‌یک از دستورات زیر در جنگو برای راه‌اندازی یک برنامه جدید به نام “users” استفاده می‌شود؟

الف) manage.py startapp users ✅

ب) manage.py start users

ج) manage.py –startapp users

د) manage.py –new app users

 

  1. در مورد تفاوت بین پروژه و اپلیکیشن در جنگو کدام مورد زیر صحیح می‌باشد؟

الف) اپلیکیشن برای بارگذاری بر روی موبایل طراحی می‌شود اما پروژه هم برای موبایل و هم برای وب‌سایت طراحی و اجرا می‌شود

ب) اپلیکیشن یک برنامه بر مبنای وب است که برای انجام کار مشخصی ساخته می‌شود اما یک پروژه مجموعه‌ای از یک و یا تعدادی از اپلیکیشن‌ها می‌باشد که هر اپلیکیشن وظیفه خاصی از پروژه را شامل می‌شود. ✅

ج) اپلیکیشن به مجموعه‌ای از پروژه‌های تحت وب اطلاق می‌شود که هر کدام وظیفه مشخصی در برنامه را بر عهده دارند.

د) اپلیکیشن تحت وب طراحی می‌شود اما پروژه یک مفهوم کلی در برنامه‌نویسی است که ارتباط مستقیمی با اپلیکیشن ندارد.

 

  1. کدام‌یک از موارد زیر جزو آرگومان‌های رایج فیلدها در Django نیست؟

الف) verbose_name

ب) null

ج) blank

د) avatar ✅

 

  1. Django Rest Framework در جنگو چه وظیفه‌ای بر عهده دارد؟

الف) در ایجاد API به فریم‌ورک جنگو کمک می‌کند ✅

ب) وظیفه اعتبارسنجی فرم‌ها را بر عهده دارد

ج) وظیفه سازماندهی توابع جنگو را بر عهده دارد

د) وظیفه سازماندهی و اعتبارسنجی توابع جنگو را بر عهده دارد

 

  1. فرض کنید قصد داریم نسخه جنگو 2.2.11 را نصب کنیم. کدام دستور صحیح می‌باشد؟

الف) python -m pip install django=2.2.11

ب) python -m pip install django(2.2.11)

ج) python -m pip install django=(“2.2.11”)

د) python -m pip install django==2.2.11 ✅

 

  1. با کمک کدام‌یک از دستورات زیر می‌توان یک محیط مجازی در جنگو و داخل دایرکتوری env ایجاد نمود؟

الف) python -m venv env ✅

ب) python -r venv env

ج) python -m env

د) python -r env

 

  1. کدام مورد جزو مزایای استفاده از فریم‌ورک جنگو نمی‌باشد؟

الف) امنیت بالایی را به صاحبان پروژه هدیه می‌دهد

ب) امکان توسعه سریع وب در آن وجود دارد

ج) حجم بالایی از کتابخانه‌ها را در اختیار برنامه‌نویس قرار می‌دهد

د) تمامی خطاهایی که به توسعه‌دهنده نمایش می‌دهد روشن و شفاف هستند ✅

 

  1. کدام‌یک از موارد زیر ORM در جنگو را به درستی توصیف می‌کند؟

الف) ORM به ما اجازه می‌دهد به صورت شیءگرا با دیتابیس ارتباط برقرار کنیم ✅

ب) یکی از معماری‌های جنگو است که صرفاً وظیفه کنترل Viewهای پروژه را بر عهده دارد

ج) بدون استفاده از ORM نمی‌توان از پروژه خروجی گرفت

د) ORM یکی از کتابخانه‌های جنگو است که برای ایجاد نمودارهای گرافیکی از آن استفاده می‌شود

 

  1. پس از ساختن یک “برنامه” جدید در پروژه جنگو موجود، چگونه می‌توانید جنگو را متوجه آن کنید؟

الف) هیچ اقدام اضافی مورد نیاز نیست، جنگو به طور خودکار متوجه برنامه‌های جدید می‌شود.

ب) دستور «manage.py validate» را اجرا کنید و سپس یک پوسته جدید راه‌اندازی کنید.

ج) دستور «manage.py syncdb» را اجرا کنید.

د) در settings.py، برنامه جدید را به متغیر INSTALLED_APPS اضافه کنید. ✅

 

  1. هدف settings.py چیست؟

الف) برای پیکربندی تنظیمات پروژه جنگو ✅

ب) پیکربندی تنظیمات برای یک برنامه

ج) تنظیم تاریخ و زمان در سرور

د) همگام‌سازی طرح پایگاه داده پاسخ

 

  1. نحوه صحیح برای گنجاندن نمای کلاسی در URLconf چیست؟

الف) (r’^pattern/$’, YourView.as_view()), ✅

ب) (r’^pattern/$’, YourView.init()),

ج) (r’^pattern/$’, YourView),

د) (r’^pattern/$’, YourView()),

 

  1. دستور شروع یک پروژه جنگو جدید به نام “myproject” چیست؟

الف) django-admin.py startproject myproject ✅

ب) django-admin.py -start

ج) django.py startproject myproject

د) django.py -new myproject

 

  1. کدام گزینه صحیح نمی‌باشد؟

الف) manage.py: یک ابزار خط فرمان است که به ما این امکان را می‌دهد که با پروژه جنگو خود ارتباط داشته باشیم؟

ب) settings.py: اطلاعات مربوط به تنظیمات اصلی پروژه می‌باشد.

ج) urls.py: تمام مسیرهای پروژه را در خود جای داده است.

د) Views: وظیفه ارتباط مستقیم اپلیکیشن با دیتابیس را بر عهده دارد ✅

 

  1. کدام یک از گزینه‌های زیر در ابتدای ایجاد یک اپلیکیشن جدید به صورت پیش‌فرض ایجاد نمی‌شود و کاربر می‌بایست آن را ایجاد نماید؟

الف) Views.py

ب) Models.py

ج) Templates.py ✅

د) Apps.py

 

  1. برای اجرا کردن سرور و نمایش وب‌سایت طراحی شده توسط فریم‌ورک جنگو کدام دستور را می‌بایست تایپ نمود؟

الف) python manage.py makemigrations

ب) python manage.py startproject

ج) python manage.py startapp

د) python manage.py runserver ✅

 

  1. کدام یک از گزینه‌های زیر نقش view را در معماری MVC جنگو ایفا می‌کند؟

الف) Templates ✅

ب) Models

ج) Urls

د) sites

 

  1. کدام یک از حلقه‌های تکرار زیر از لحاظ دستورالعمل جنگو به درستی در template نوشته شده است؟

الف) {% for athlete in athlete_list %}: <p>{{ athlete.name }}</p> {% endfor %}

ب) {% for athlete in athlete_list %} <p>{{ athletename }}</p>

ج) { for athlete in athlete_list } <p>{{ athlete.name }}</p> { endfor }

د) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p> {% endfor %} ✅

 

  1. اگر قصد داشته باشیم فقط یک آرایه را از پایگاه داده فراخوانی کنیم کدام یک از دستورات زیر صحیح می‌باشد؟

الف) ModelName.objects.all()

ب) ModelName.objects.one()

ج) ModelName.objects.get() ✅

د) ModelName.objects.filter()

 

  1. فیلتر «ایمن» داخلی قالب جنگو چه می‌کند؟

الف) یک رشته را به عنوان عدم نیاز به فرار بیشتر HTML قبل از خروجی علامت‌گذاری می‌کند ✅

ب) از پردازش الگو خارج می‌شود و بقیه الگو را نادیده می‌گیرد

ج) تگ HTML بعدی را قفل می‌کند تا در اشکال‌زدایی مرورگر قابل تغییر نباشد

د) یک رشته را به عنوان نیاز به فرار HTML قبل از خروجی علامت‌گذاری می‌کند

 

  1. معرفی مسیر Static ها در جنگو به چه صورت است؟

الف) STATICFILES_DIRS = [os.path.join(BASE_DIR,’static’)] ✅

ب) MEDIA_URL = ‘/media/’

ج) STATICFILES_DIRS = [os.path.join(BASE_DIR,media)]

د) STATIC_URL = os.path.join(BASE_DIR,’static’)

 

  1. در مورد تفاوت بین پروژه و اپلیکیشن در جنگو کدام مورد زیر صحیح می‌باشد؟

الف) اپلیکیشن برای بارگذاری بر روی موبایل طراحی می‌شود اما پروژه هم برای موبایل و هم برای وب‌سایت طراحی و اجرا می‌شود

ب) اپلیکیشن یک برنامه بر مبنای وب است که برای انجام کار مشخصی ساخته می‌شود اما یک پروژه مجموعه‌ای از یک و یا تعدادی از اپلیکیشن‌ها می‌باشد که هر اپلیکیشن وظیفه خاصی از پروژه را شامل می‌شود. ✅

ج) اپلیکیشن به مجموعه‌ای از پروژه‌های تحت وب اطلاق می‌شود که هر کدام وظیفه مشخصی در برنامه را بر عهده دارند.

د) اپلیکیشن تحت وب طراحی می‌شود اما پروژه یک مفهوم کلی در برنامه‌نویسی است که ارتباط مستقیمی با اپلیکیشن ندارد.

 

  1. model user در جنگو به صورت پیش‌فرض دارای چه فیلدهایی می‌باشد؟

الف) username , password , email , full_name

ب) username , password , email , first_name , last_name , thumbnail

ج) username , password , email , first_name , last_name ✅

د) username , password , email , full_name , image

 

  1. Django Rest Framework در جنگو چه وظیفه‌ای بر عهده دارد؟

الف) در ایجاد API به فریم‌ورک جنگو کمک می‌کند ✅

ب) وظیفه اعتبارسنجی فرم‌ها را بر عهده دارد

ج) وظیفه سازماندهی توابع جنگو را بر عهده دارد

د) وظیفه سازماندهی و اعتبارسنجی توابع جنگو را بر عهده دارد

 

  1. Jinja Templating یک موتور قالب بسیار محبوب برای ……… است.

الف) Java Scripts

ب) React Native

ج) Python ✅

د) CSS

 

  1. با کمک کدام یک از دستورات زیر می‌توان یک محیط مجازی در جنگو و داخل دایرکتوری env ایجاد نمود؟

الف) python -m venv env ✅

ب) python -r venv env

ج) python -m env

د) python -r env

 

  1. کدام مورد جزو مزایای استفاده از فریم‌ورک جنگو نمی‌باشد؟

الف) امنیت بالایی را به صاحبان پروژه هدیه می‌دهد

ب) امکان توسعه سریع وب در آن وجود دارد

ج) حجم بالایی از کتابخانه‌ها را در اختیار برنامه‌نویس قرار می‌دهد

د) تمامی خطاهایی که به توسعه‌دهنده نمایش می‌دهد روشن و شفاف هستند ✅

 

  1. دستورات مربوط به ایجاد جداول در پایگاه داده در کدام فایل پروژه نوشته می‌شود؟

الف) views.py

ب) admin.py

ج) models.py ✅

د) wsgi.py

 

  1. اگر بخواهیم تمامی object های یک مدل تحت عنوان User را از پایگاه داده فراخوانی کنیم از کدام دستور زیر می‌بایست استفاده کنیم؟

الف) User.objects(all)

ب) User.all_objects()

ج) User(objects).all

د) User.objects.all() ✅

 

  1. در جنگو از چه دیتابیس‌هایی می‌توان استفاده کرد؟

الف) MySQL MariaDB MongoDB ✅

ب) MongDB User

ج) MariaDB User

د) User.objects.all

 

  1. پس از تعریف یک مدل در محیط جنگو چه اتفاقی می‌افتد؟

الف) یک template برای آن ایجاد می‌شود

ب) یک جدول برای آن در دیتابیس ساخته می‌شود ✅

ج) یک جدول برای آن در setting ساخته می‌شود

د) یک url برای آن ایجاد می‌شود

 

  1. کدام بخش در یک اپلیکیشن جنگو تصمیم می‌گیرد که چه داده‌هایی باید از دیتابیس به قالب تحویل داده شوند؟

الف) Views.py ✅

ب) Urls

ج) Models.py

د) Forms.py

 

  1. جنگو را بر روی چه سیستم عاملی می‌شود نصب کرد؟

الف) مک، لینوکس، windows ✅

ب) dos

ج) Dos , windows

د) Mac & dos

 

  1. کدام گزینه از بخش‌های url می‌باشد؟

الف) host name

ب) path

ج) query string

د) همه موارد ✅

 

  1. prepopulated_fields = {‘slug’:(‘title’,)} چه کاری انجام می‌دهد؟

الف) با وارد کردن هر تکستی در فیلد title ، آن تکست همزمان در فیلد slug قرار می‌گیرد. ✅

ب) با وارد کردن هر تکستی در فیلد slug ، آن تکست همزمان در فیلد title قرار می‌گیرد

ج) تکست در فیلد title نمی‌تواند در فیلد slug باشد.

د) تکست در فیلد slug نمی‌تواند در فیلد title باشد.

 

  1. در کلید ATOMIC_REQUESTS که در settings.py در بخش تنظیمات دیتابیس قرار دارد، اگر True تنظیم شود چه می‌شود؟

الف) مدیریت commit تراکنش‌ها به عهده ادمین می‌شود

ب) مدیریت commit تراکنش‌ها توسط دیتابیس به صورت خودکار انجام می‌شود

ج) اگر در حین پردازش درخواست خطایی رخ ندهد جنگو آن تراکنش را commit می‌کند ✅

د) یک لینک ارتباطی نامحدود و دائمی ایجاد می‌شود

 

  1. کدام گزینه ترتیب اتفاقات افتاده در جنگو پس از ارسال درخواست از سوی کاربر به درستی بیان می‌کند؟

الف) Template,url,view

ب) url,view,template ✅

ج) url,template,view

د) view,template,url

 

  1. با توجه به مدلی به نام “کاربر” که حاوی یک فیلد DateTime به نام “last_login” است، چگونه برای کاربرانی که هرگز وارد سیستم نشده‌اند پرس و جو می‌کنید؟

الف) User.objects.filter( last_login=Null)

ب) User.objects.filter( last_login__null=True)

ج) User.objects.filter( last_login__isnull=False)

د) User.objects.filter( last_login__isnull=True) ✅

 

  1. کدام یک از فریم‌ورک‌های زیر برای ساخت api نمی‌توان استفاده کرد؟

الف) django

ب) DRF

ج) Flask

د) laravel ✅

 

  1. کدام یک از گزینه‌های زیر جز محیط‌های توسعه جنگو نمی‌باشد؟

الف) نصب راه‌اندازی python

ب) نصب راه‌اندازی پایتون در django

ج) نصب راه‌اندازی سیستم پایگاه داده

د) نصب راه‌اندازی Flask ✅

 

  1. کدام بنیاد فریم‌ورک وب جنگو را مدیریت می‌کند؟

الف) بنیاد Disqus، سال‌هاست که جنگو را مدیریت و استفاده می‌کنند.

ب) چارچوب وب جنگو توسط یک سازمان مستقل و غیرانتفاعی به نام بنیاد (DSF) مدیریت و نگهداری می‌شود ✅

ج) بنیاد Pinterest ، جنگو را مدیریت و استفاده می‌کنند.

د) بنیاد Mozilla جنگو را مدیریت و استفاده می‌کنند.

 

  1. برنامه‌ای که قاعده و ارتفاع متوازی‌الاضلاع را خوانده، مساحت آن را نمایش می‌دهد؟

الف) base = float(input(“length of base: “)) height = float(input(‘measurement of height: ‘)) area = base*height print(“Area is:”, area) نتیجه: length of base: 22 measurement of height: 2555 Area is: 02352

ب) length of base: 22 measurement of height: 2555 Area is

ج) length of base: 22 measurement of height is: 02352

د) length of base of height: 2555 Area is: 02352 ✅

 

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

الف) Height of cylinder: 02 radius of cylinder: 0 Volum is: 052520353220353220

ب) Height of cylinder: 02 radius of cylinder: 0 Volum is: 052520353220353220 surface Area is: 031553220353220351 ✅

ج) Height of cylinder of cylinder: 0 Volum is: 052520353220353220

د) Height of cylinder: 02 er: 0 Volum is: 052520353220353220

 

  1. هر سال برابر با 0.959*931 ثانیه است. برنامه‌ای که سن شما را دریافت کرده و به ثانیه تبدیل می‌کند؟

الف) Enter age:78 Second= 252788333323 ✅

ب) ss = 4.102e7; radian = float(input(‘Radius of sphere: ‘)) sur_area = 4*pi*radian**2 volume =

ج) radian = float(input(‘Radius of sphere: ‘)) sur_area = 4*pi*radian**2 volume =

د) radian = float(input(sur_area = 4*pi*radian**2 volume =

 

  1. پایتون چیست؟

الف) پایتون یک زبان برنامه‌نویسی سطح پایین، چندمنظوره

ب) جهت الگوریتم نویسی استفاده می‌شود

ج) پایتون یک زبان برنامه‌نویسی سطح بالا، چندمنظوره، تفسیری و شیءگرا است که توسعه آن به سال 1991 توسط گودیو فان روزن، باز می‌گردد. ✅

د) پایتون یک زبان برنامه‌نویسی سطح میانی، تک منظوره است

 

  1. منظور از لوکال اسکوپ (local scope)، چیست؟

الف) اشیاء موجود در سرتاسر اجرای کد از زمان ایجاد آن‌ها است.

ب) اشیاء کلی ماژول کنونی است که در برنامه قابل دسترسی هستند.

ج) اشیاء محلی موجود در تابع کنونی است. ✅

د) تمامی نام‌های توکار قابل فراخوانی در اپلیکیشن است.

 

  1. تعریف ماژول‌ها چیست؟

الف) به عدم تصادم بین نام‌های ماژول‌ها کمک می‌کنند

ب) برای جلوگیری از تصادم بین نام‌های متغیر گلوبال کمک می‌کنند

ج) ماژول‌های درون پکیج به درون فضای نامی محلی، ایمپورت می‌شوند ✅

د) ماژول‌های درون پکیج به درون فضای نامی محلی، استیتمنت نمی‌شوند

 

  1. منظور از ویژگی‌های سراسری چیست؟

الف) ویژگی‌هایی هستند که با پیشوند «_» برای شناساگرهای خود، تعریف می‌شوند

ب) ویژگی‌هایی هستند که دارای دو پیشوند «__» هستند

ج) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند ✅

د) یک کلمه و ویژگی کلیدی در پایتون است

 

  1. ویژگی‌های حفاظت شده (protected) چیست؟

الف) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند

ب) اگر برای این کار، تلاش کنید، با خطای AttributeError مواجه خواهید شد.

ج) برای تعریف یک مورد از یک شیء از یک کلاس استفاده می‌شود.

د) ویژگی‌هایی هستند که با پیشوند «_» برای شناساگرهای خود، تعریف می‌شوند ✅

 

  1. منظور از self در پایتون چیست؟

الف) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند

ب) یک کلمه کلیدی در پایتون است که برای تعریف یک مورد از یک شیء از یک کلاس استفاده می‌شود ✅

ج) به این معنی که دیتا تایپ ردیف باید یکنواخت یا همگن باشد

د) ویژگی‌هایی هستند که دارای دو پیشوند «__» هستند

 

  1. لیست‌ها در پایتون می‌توانند حاوی ………………….. مختلف باشند.

الف) شناساگر

ب) عناصر دیتا تایپ‌های ✅

ج) ویژگی‌ها

د) پسوند و پیشوند

 

  1. مدیریت حافظه در پایتون توسط Python Memory Manager انجام می‌شود؟

الف) private heap space

ب) grabage collector

ج) Python Memory Manager ✅

د) manager

 

  1. فضای نامی محلی چیست؟

الف) شامل توابع توکار هسته پایتون و نام‌های توکار برای انواع مختلف اجراء است.

ب) شامل نام‌های محلی درون یک تابع است. این فضای نامی به صورت موقت برای یک فراخوانی تابع ساخته شده و زمانی که تابع بازگردد، پاک می‌شود. ✅

ج) فضای نامی بیرونی‌تر از یک فضای نامی درونی‌تر، وجود ندارد.

د) فضای اختصاص داده شده توسط manager به شکل یک فضای خصوصی

 

  1. منظور از دکوراتورها در پایتون چیست؟

الف) یک تابع بدون نام در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

ب) توابعی ضروری هستند که به یک تابع موجود در پایتون، بدون تغییر ساختار خود تابع، عملکرد اضافه می‌کنند ✅

ج) یک تابع با نام در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

د) یک تابع با نام یکتا و مشخص در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

 

  1. Pickling در پایتون به چه معنی است؟

الف) جریان بایت را از حالت سریالی خارج می‌کند تا اشیاء ذخیره شده در فایل را بازسازی کند

ب) یک متغیر محیطی است

ج) نام فرآیند سریال‌سازی در پایتون است. هر شیء در پایتون را می‌توان به صورت یک جریان بایت، سریال‌سازی نمود ✅

د) فهرست صحیحی از ویژگی‌ها و روش‌های شیء که بر روی آن‌ها فراخوانی شده است

 

  1. Unpickling در پایتون به چه معنی است؟

الف) نام فرآیند سریال‌سازی در پایتون است.

ب) یعنی هر شیء در پایتون را می‌توان به صورت یک جریان بایت، سریال‌سازی نمود

ج) به معنی این است که اشیاء pickle را می‌توان بیشتر هم فشرده کرد

د) این فرآیند، جریان بایت را از حالت سریالی خارج می‌کند تا اشیاء ذخیره شده در فایل را بازسازی کرده و شیء را در حافظه بارگذاری کند. ✅

 

  1. تابعی که برای فرآیند pickling به کار می‌رود به چه صورت است:

الف) pickle.dump() ✅

ب) pickle.dump()

ج) help()

د) dir()

 

  1. تفاوت‌های بین فایل‌های py. و pyc. چیست؟

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

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

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

د) این فرمت حدواسط، بایت‌کد نامیده می‌شود.

 

  1. پایتون چگونه تفسیر می‌شود؟

الف) پایتون به عنوان یک زبان، تفسیر یا کامپایل نمی‌شود. تفسیر شدن یا کامپایل شدن، یک خاصیت پیاده‌سازی است. ✅

ب) پایتون به عنوان یک زبان، تفسیر یا کامپایل می‌شود.

ج) پایتون، برای تفسیر اسناد ماژول‌ها، توابع، کلمات کلیدی و … به کار می‌رود.

د) پایتون یک متغیر محیطی است که شما می‌توانید برای اضافه کردن دایرکتور از آن استفاده کنید

 

  1. کمپانی‌های زیر کدام‌یک از فریم‌ورک Django استفاده می‌کنند؟

الف) Instagram و Pinterest ✅

ب) Netflix و MailGun

ج) Netflix و Lyft

د) Lyft و Instagram

 

  1. جملات چند خطی در interactive interpreter با استفاده از چه کاراکتری مشخص می‌شوند:

الف) سه نقطه (…) ✅

ب) (“……”)

ج) ؟؟؟؟

د) (###)

 

  1. کاربرد دستور sqlall چیست؟

الف) در حقیقت جداول پایگاه داده را تولید نمی‌کند و به عبارت دیگر پایگاه داده نیز لمس نمی‌کند، تنها خروجی تولید شده توسط جنگو را به زبان SQL مورد نظر نشان می‌دهد ✅

ب) یک هماهنگی ساده بین مدل‌ها و پایگاه داده می‌باشد

ج) حذف مدل‌ها را با پایگاه داده هماهنگ می‌کند

د) در صورتی که دستور python manage.py syncdb را دوباره اجرا کنید، اتفاقی رخ نخواهد داد

 

  1. خطای DoesNotExist یک attribute از کلاس مدل می‌باشد (Publisher.DoesNotExist). با کدام دستور می‌توانید خطاها را کنترل کنید:

الف) >>> Publisher.objects.get(name=”Penguin”) Traceback (most recent call last):

ب) try: p = Publisher.objects.get(name=’Apress’) except Publisher.DoesNotExist: print “Apress isn’t in the database yet.” else: print “Apress is in the database.” ✅

ج) try: p = Publisher.objects.get(name=’Apress’) except Publisher.DoesNotExist

د) DoesNotExist: Publisher matching query does not exist.

 

  1. برگرداندن چند مقدار از توابع در کدام یک از گزینه‌های زیر است؟

الف) import sys x = 1 print(sys.getsizeof(x))

ب) def x(): return 1, 2, 3, 4 a, b, c, d = x() print(a, b, c, d) ✅

ج) def x(): return 1, 2, 3, 4 a, b, c, d = x() print

د) print(max(set(test), key = test.count))

 

  1. پیدا کردن عنصری که بیشتر از سایر عناصر در یک فهرست تکرار شده است در کدام گزینه است؟

الف) test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4] print(max(set(test), key = test.count)) ✅

ب) import sys x = 1 print(sys.getsizeof(x))

ج) def x(): return 1, 2, 3, 4 a, b, c, d = x()

د) test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4] (max(set(test), key = test.count))

 

  1. چاپ رشته‌ای به تعداد N مرتبه نتیجه کدام دستورات زیر است؟

الف) from collections import Counter def is_anagram(str1, str2): return Counter(str1) == Counter(str2)

ب) n = 2 a = “GeeksforGeeks” print(a*n) ✅

ج) from collections import Counter def is_anagram(str1, str2):

د) print(max(set(test), key = test.count))

 

  1. ساخت یک فهرست واحد بدون استفاده از حلقه‌ها در کدام دستور زیر نهفته است؟

الف) import itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain.from_iterable(test))) #-> [-1, -2, 30, 40, 25, 35] ✅

ب) def unifylist(l_input, l_target): for it in l_input:

ج) if isinstance(it, list): unifylist(it, l_target) elif isinstance(it, tuple):

د) import itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain

 

  1. مبدا برای تقلید عملکرد چاپ در کدام گزینه است؟

الف) import sys lprint=lambda *args:sys.stdout.write(” “.join(map(str,args)))

ب) import sys lprint=lambda *args:sys.stdout.write(” “.join(map(str,args))) lprint(“python”, “tips”,1000,1001) #-> python tips 1000 1001 ✅

ج) itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain

د) print(“<http://www.google.com/>”.startswith((“http://”, “https://”)))

 

  1. برنامه تولید کننده اطلاعات ساختگی با پایتون در کدام گزینه است؟

الف) from faker import Faker fake = Faker() print(fake.name()) print(fake.email())

ب) from faker import Faker fake = Faker() print(fake.name()) print(fake.email()) print(fake.country()) print(fake.profile()) ✅

ج) import pywhatkit pywhatkit.text_to_handwriting(”’

د) import pywhatkit pywhatkit.text

 

  1. برنامه خاموش کردن کامپیوتر با پایتون در کدام گزینه نوشته شده است؟

الف) import os if shutdown == ‘yes’: shutdown = input(“Do you want to shutdown your computer (yes / no): “) os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’)

ب) import os shutdown = input(“Do you want to shutdown your computer (yes / no): “) if shutdown == ‘yes’: os.system(“shutdown /s /t 1

ج) import os shutdown = input(“Do you want to shutdown if shutdown == ‘yes’: os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’)

د) import os shutdown = input(“Do you want to shutdown your computer (yes / no): “) if shutdown == ‘yes’: os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’) ✅

 

  1. برنامه رسم نمودار دایره‌ای با پایتون در کدام گزینه است؟

الف) import matplotlib.pyplot as plt Partition = sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show()

ب) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show()

ج) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show() ✅

د) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() is(‘equal’) plt.show()

 

  1. برنامه پنجره هشدار با پایتون در کدام گزینه نوشته شده است؟

الف) import pyautogui num=int(input(“Enter a value to divide 100″)) if num == 0: pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’) ✅

ب) import pyautogui num=int(input(“Enter a value to divide 100″)) pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’)

ج) import pyautogui 100″)) if num == 0: pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’)

د) import pyautogui num=int(input(“Enter a value to divide 100”)) if num == 0: print(f’The value is {100/num}’)

 

  1. یک ماژول را می‌توان با تغییر نام آن، به چه صورت وارد کرد؟

الف) # import module by renaming it print(“The value of pi is”, m.pi)

ب) # import module by renaming it import math as m print(“The value of pi is”, m.pi) ✅

ج) # import module by renaming it import math as m

د) import renaming it import math as m print(“The value of pi is”, m.pi)

 

  1. چگونه می‌توان همه اسامی (تعاریف) را از یک ماژول وارد کرد؟

الف) # import all names from the standard module math from math import *

ب) # import all names from the standard module math print(“The value of pi is”, pi)

ج) # import all names from the standard module math from math import * print(“The value of pi is”, pi) ✅

د) names from the standard module math from math import * print(“The value of pi is”, pi)

 

  1. چگونه همه اسامی تعریف شده در «فضای نام» (Namespace) جاری را می‌توان با استفاده از تابع dir() و بدون هیچ آرگومانی پیدا کرد؟

الف) >>> a = 1 >>> b = “hello” >>> import math >>> dir() [‘__builtins__’, ‘pyscripter’]

ب) >>> a = 1 >>> import math >>> dir() [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’]

ج) >>> a = 1 >>> b = “hello” >>> import math [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’]

د) >>> a = 1 >>> b = “hello” >>> import math >>> dir() [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’] ✅

 

  1. برای ایجاد یک محیط مجازی با استفاده از Virtualenv و نصب جنگو، کدام دستور ترتیب صحیح را رعایت می‌کند؟

الف) virtualenv env && source env/bin/activate && pip install django ✅

ب) source env/bin/activate && pip install django && virtualenv env

ج) pip install django && virtualenv env && source env/bin/activate

د) virtualenv –install django && source env/bin/activate

 

  1. در یک پروژه جنگو، فایل settings.py کدام نقش کلیدی را ایفا می‌کند؟

الف) تنظیمات مربوط به URLها

ب) نگهداری مدل‌های پایگاه داده

ج) مدیریت کلیدهای امنیتی و تنظیمات پایگاه داده ✅

د) تنظیمات مربوط به مدیریت صفحه ادمین

 

  1. برای ایجاد یک پروژه جنگو جدید با نام MyProject، کدام دستور باید استفاده شود؟

الف) django-admin startproject myproject ✅

ب) django-admin.py createproject MyProject

ج) django-admin startproject –name=MyProject

د) python manage.py startproject MyProject

 

  1. در مدل‌های جنگو، استفاده از ForeignKey چه تأثیری بر ساختار پایگاه داده دارد؟

الف) ایجاد یک ارتباط یک به یک

ب) ایجاد یک ارتباط چند به چند

ج) ایجاد یک کلید اولیه جایگزین

د) ایجاد یک ارتباط یک به چند ✅

 

  1. اگر بخواهید یک فیلد تاریخ را با مقدار پیش‌فرض تاریخ و زمان فعلی ایجاد کنید، از کدام گزینه استفاده می‌کنید؟

الف) models.DateField(default=timezone.now)

ب) models.DateTimeField(default=datetime.now)

ج) models.DateTimeField(auto_now_add=True) ✅

د) models.DateField(auto_add_now=True)

 

  1. کدام یک از گزینه‌های زیر هنگام استفاده از مدل‌های جنگو باعث بازدهی بهتر پرس‌وجوها می‌شود؟

الف) استفاده از متد all() به تنهایی

ب) ترکیب متدهای filter() و select_related() ✅

ج) فراخوانی مستقیم داده‌ها از دیتابیس با raw()

د) استفاده از متد values() بدون فراخوانی فیلدهای مرتبط

 

  1. برای تعریف الگوی یک URL که شامل متغیر username باشد و فقط مقادیر الفبایی را قبول کند، کدام گزینه صحیح است؟

الف) path(‘<username>/’, views.profile)

ب) path(‘<str:username>/’, views.profile)

ج) re_path(r’^profile/(?P<username>[a-zA-Z]+)/$’, views.profile) ✅

د) url(r’^profile/(?P<username>\w+)/$’, views.profile)

 

  1. کدام یک از روش‌های زیر بهترین انتخاب برای مدیریت لینک‌های تودرتو (nested links) در جنگو است؟

الف) استفاده از متدهای view با مقادیر سخت‌کد شده

ب) استفاده از الگوهای نام‌گذاری شده (namespace) در URL ✅

ج) تنظیم دستی هر لینک در فایل Template

د) استفاده از آرگومان‌های query string

 

  1. در زبان Template جنگو، برای بررسی شرطی اینکه یک متغیر خالی نیست و مقدار عددی دارد، از کدام روش استفاده می‌کنید؟

الف) {% if variable %}

ب) {% if variable|default:0 %}

ج) {% if variable and variable > 0 %} ✅

د) {% if variable|add:0 > 0 %}

 

  1. کدام یک از دستورات زیر به بهترین نحو می‌تواند محتوا را از قالب فرزند به قالب والد ارسال کند؟

الف) {% include %}

ب) {% extends %}

ج) {% block %} ✅

د) {% super %}

 

  1. برای بهینه‌سازی نمایش یک مدل با تعداد زیادی رکورد در پنل مدیریت جنگو، کدام روش کارآمدتر است؟

الف) استفاده از list_display با تمامی فیلدها

ب) استفاده از list_select_related برای کاهش تعداد پرس‌وجوهای پایگاه داده ✅

ج) افزودن فیلترهای پیش‌فرض در list_filter

د) استفاده از متدهای سفارشی در ModelAdmin

 

  1. در جنگو، چه زمانی استفاده از متد clean() در مدل مناسب است؟

الف) هنگام انجام اعتبارسنجی داده‌ها قبل از ذخیره ✅

ب) برای اعمال تغییرات در داده‌های نمایش داده شده

ج) هنگام ایجاد تنظیمات برای پایگاه داده

د) برای مدیریت ارتباطات بین مدل‌ها

 

  1. اگر بخواهید QuerySet یک مدل را از بزرگ‌ترین مقدار فیلد مرتب کنید، از کدام روش استفاده می‌کنید؟

الف) order_by(‘-field_name’) ✅

ب) filter(field_name__desc=True)

ج) annotate(desc(field_name))

د) sort(field_name, reverse=True)

 

  1. کدام یک از موارد زیر در رابطه با جنگو و پایگاه داده‌های NoSQL صحیح است؟

الف) جنگو به صورت پیش‌فرض فقط از پایگاه داده‌ رابطه‌ای پشتیبانی می‌کند.

ب) جنگو از پایگاه داده‌های NoSQL به کمک موتورهای Third-Party پشتیبانی می‌کند.

ج) استفاده از پایگاه داده NoSQL در جنگو نیازمند تغییرات در معماری مدل‌هاست.

د) تمامی موارد بالا. ✅

 

  1. کدام متد برای هندل کردن خطاهای 404 در جنگو استفاده می‌شود؟

الف) HttpResponseNotFound

ب) PageNotFoundView

ج) django.http.error_404()

د) get_object_or_404() ✅

 

  1. برای اضافه کردن قابلیت آپلود فایل به یک مدل در جنگو، چه تنظیماتی موردنیاز است؟

الف) اضافه کردن FileField به مدل و تنظیم مسیر ذخیره در settings.py ✅

ب) اضافه کردن UploadField به مدل و ایجاد پوشه دستی

ج) استفاده از FileSystemField برای تعریف مسیر ذخیره فایل‌ها

د) هیچ تنظیم خاصی موردنیاز نیست؛ جنگو به صورت پیش‌فرض مدیریت فایل را انجام می‌دهد.

 

  1. چگونه می‌توانید یک View در جنگو ایجاد کنید که فقط از متدهای POST پشتیبانی کند؟

الف) با استفاده از شرط در داخل View

ب) افزودن @require_POST به عنوان Decorator ✅

ج) استفاده از کلاس‌های پایه View مانند PostOnlyView

د) تنظیم methods=[‘POST’] در URL

 

  1. در پنل مدیریت جنگو، چگونه می‌توانید یک فیلد محاسباتی (مانند جمع دو فیلد دیگر) را در لیست نمایش دهید؟

الف) افزودن یک متد به کلاس مدل و استفاده از آن در list_display

ب) استفاده از متغیرهای محاسباتی در settings.py

ج) ایجاد یک متد در ModelAdmin و استفاده از list_display ✅

د) افزودن فیلد مستقیم به دیتابیس و نمایش آن

 

  1. برای ایجاد یک رابطه چند به چند در مدل جنگو با استفاده از یک مدل واسط در چند به چند سفارشی، کدام گزینه مناسب‌تر است؟

الف) تعریف ManyToManyField به همراه پارامتر through ✅

ب) استفاده از ForeignKey در هر دو مدل

ج) ایجاد مدل واسط به صورت دستی بدون تنظیمات خاص

د) هیچ کدام از گزینه‌های بالا

 

  1. در جنگو، کدام یک از موارد زیر برای امنیت بیشتر در ارسال داده‌ها از طریق فرم توصیه می‌شود؟

الف) اعتبارسنجی تمامی فیلدها به صورت دستی

ب) رمزنگاری تمامی داده‌ها در فرم با کلید امنیتی

ج) استفاده از متد POST به جای GET

د) استفاده از CSRF برای جلوگیری از حملات Cross-Site Request Forgery ✅

 

  1. برای ارسال یک آرگومان از View به Template در جنگو، کدام ساختار استفاده می‌شود؟

الف) استفاده از متغیرهای request

ب) استفاده از kwargs در Template

ج) مقداردهی مستقیم در فایل HTML

د) استفاده از متغیرهای context در View ✅

 

  1. در جنگو، چگونه می‌توان محتوای یک قالب (Template) را به صورت شرطی بر اساس سطح دسترسی کاربر نمایش داد؟

الف) مدیریت شرط‌ها در فایل urls.py

ب) اضافه کردن متد is_authenticated در View

ج) استفاده از شرط {% if user.is_authenticated %} در Template ✅

د) استفاده از Decorator در View

 

  1. کدام مورد برای بهینه‌سازی جستجو در یک مدل جنگو استفاده می‌شود؟

الف) استفاده از متد filter() برای فیلترگذاری

ب) افزودن ایندکس به فیلدهای پرکاربرد با استفاده از db_index=True ✅

ج) تعریف unique=True در تمامی فیلدها

د) تبدیل تمامی QuerySetها به داده خام

 

  1. اگر بخواهید پیام‌های هشدار (Flash Messages) را به کاربر نمایش دهید، کدام Framework داخلی جنگو استفاده می‌شود؟

الف) django.contrib.messages ✅

ب) django.middleware.security

ج) django.contrib.admin

د) django.contrib.staticfiles

 

  1. برای استفاده از قالب‌های داینامیک و بازنویسی ساختار HTML در جنگو، از کدام قابلیت استفاده می‌شود؟

الف) شرط‌های {% if %} و {% else %}

ب) بلوک‌های {% block %} و ارث‌بری قالب ✅

ج) توابع سفارشی Template

د) شامل کردن فایل‌های جداگانه

 

  1. در زمان استفاده از کلاس FormView در جنگو، متد form_valid() چه وظیفه‌ای دارد؟

الف) بازنویسی Template مربوط به فرم

ب) اعتبارسنجی داده‌های فرم

ج) مدیریت عملیات پس از تایید داده‌های فرم ✅

د) تعریف نام فیلدهای فرم

 

  1. چگونه می‌توانید یک متد سفارشی را برای عملیات CRUD در View استفاده کنید؟

الف) استفاده از QuerySetهای خام

ب) افزودن متدهای سفارشی به ModelAdmin

ج) بازنویسی متدهای پایه مانند get() یا post() ✅

د) تعریف توابع کمکی در فایل urls.py

 

  1. برای استفاده از یک API خارجی و ارسال درخواست HTTP در جنگو، از چه ابزاری می‌توانید استفاده کنید؟

الف) کتابخانه داخلی requests ✅

ب) متد HttpRequest جنگو

ج) متدهای fetch() جاوااسکریپت

د) استفاده از Session جنگو

 

  1. کدام یک از متدهای جنگو برای ایجاد روابط پیچیده بین مدل‌ها توصیه می‌شود؟

الف) استفاده از مدل‌های انتزاعی (Abstract Models)

ب) استفاده از متد Prefetch در QuerySet

ج) تعریف ManyToManyField با مدل واسط ✅

د) ترکیب ForeignKey و OneToOneField

 

  1. برای اعمال تغییرات در تنظیمات جنگو بر اساس محیط (توسعه، تولید)، بهترین روش چیست؟

الف) استفاده از فایل‌های تنظیمات جداگانه برای هر محیط

ب) تعریف تمامی تنظیمات در settings.py و استفاده از شرط‌ها

ج) ایجاد متغیرهای محیطی (Environment Variables)

د) ترکیب گزینه‌های الف و ج ✅

 

  1. چگونه می‌توان خطاهای عملکرد و خطاهای یک پروژه جنگو را به صورت حرفه‌ای لاگ‌گیری کرد؟

الف) استفاده از پکیج داخلی logging در settings.py ✅

ب) استفاده از فایل‌های متنی برای ذخیره لاگ‌ها

ج) ارسال خطاها به کنسول در زمان توسعه

د) افزودن تابع سفارشی برای مدیریت لاگ‌ها

 

  1. برای ایجاد یک migration جدید در Django از کدام دستور استفاده می‌شود؟

الف) python manage.py migrate

ب) python manage.py makemigrations ✅

ج) python manage.py runserver

د) python manage.py startapp

 

  1. چگونه می‌توانید درخواست‌های Ajax را در یک View مدیریت کنید؟

الف) استفاده از شرط request.is_ajax()

ب) ارسال پاسخ JSON با JsonResponse

ج) تعریف متدهایی با پشتیبانی از GET و POST

د) ترکیب گزینه‌های الف و ب ✅

 

  1. کدام یک از گزینه‌های زیر برای ایجاد یک فرم پویا (Dynamic Form) در جنگو مناسب است؟

الف) استفاده از کلاس پایه ModelForm

ب) بازنویسی متد __init__() برای تغییر فیلدها در زمان اجرا

ج) تعریف یک متغیر formset_factory برای تولید فرم‌های تکراری

د) ترکیب گزینه‌های ب و ج ✅

 

  1. در جنگو، کدام Decorator برای محدود کردن دسترسی به View فقط برای کاربران لاگین کرده استفاده می‌شود؟

الف) @require_user

ب) @login_required ✅

ج) @user_only

د) @authenticate_user

 

  1. برای استفاده از تاریخ شمسی در پنل مدیریت جنگو، کدام ابزار کاربردی‌تر است؟

الف) jdatetime

ب) jalali_date

ج) پکیج‌های Third-Party مانند django-jalali ✅

د) تغییر تنظیمات دستی در فایل settings.py

 

  1. اگر بخواهید یک API RESTful ساده در جنگو ایجاد کنید، کدام ابزار مناسب‌تر است؟

الف) django-rest-framework ✅

ب) کلاس‌های پایه View مانند جنگو

ج) استفاده از raw SQL برای مدیریت درخواست‌ها

د) ابزارهای خارجی مانند Flask

 

  1. برای ارسال ایمیل از طریق جنگو، کدام تنظیمات در فایل settings.py ضروری است؟

الف) SMTP_SERVER, SMTP_PORT, SMTP_USER, SMTP_PASSWORD

ب) MAIL_SERVER, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD

ج) EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER, EMAIL_HOST_PASSWORD ✅

د) تنها EMAIL_BACKEND کافی است

 

  1. کدام تنظیم برای مدیریت فایل‌های استاتیک در محیط تولید مناسب است؟

الف) استفاده از STATICFILES_DIRS در تنظیمات

ب) تعریف مسیر STATIC_ROOT برای جمع‌آوری فایل‌های استاتیک ✅

ج) سرو کردن فایل‌ها از طریق سرور داخلی جنگو

د) تنظیم دستی URL فایل‌های استاتیک در هر Template

 

  1. برای پیاده‌سازی صفحه‌بندی (Pagination) در یک View جنگو، کدام کلاس یا ابزار مناسب‌تر است؟

الف) Paginator ✅

ب) QuerySetPaginator

ج) paginate()

د) استفاده از روش‌های دستی و شرط‌های ساده

 

  1. در جنگو، برای جلوگیری از دسترسی غیرمجاز به یک مدل خاص، کدام رویکرد بهتر است؟

الف) استفاده از محدودیت‌های سطح دیتابیس

ب) افزودن مجوزهای سفارشی (Custom Permissions) به مدل

ج) تعریف Viewهایی با دسترسی محدود

د) استفاده از Decorator @permission_required ✅

 

  1. در Viewهای Class-based جنگو، برای بازنویسی رفتار پیش‌فرض حذف یک شیء، از کدام متد استفاده می‌شود؟

الف) delete()

ب) post()

ج) destroy()

د) remove() ✅

 

  1. برای اتصال یک فرم به یک مدل جنگو، از کدام کلاس استفاده می‌شود؟

الف) Form

ب) ModelForm ✅

ج) FormFactory

د) Formset

 

  1. چگونه می‌توانید از مهاجرت (Migration) برای تغییر ساختار پایگاه داده استفاده کنید؟

الف) اجرای دستور python manage.py makemigrations

ب) استفاده از sqlmigrate برای مشاهده تغییرات

ج) اجرای دستور python manage.py migrate

د) ترکیب گزینه‌های الف و ج ✅

 

  1. برای مدیریت بهتر خطاهای HTTP در جنگو، کدام تنظیم بهینه است؟

الف) استفاده از متد پیش‌فرض جنگو برای مدیریت خطاها

ب) تعریف Viewهای اختصاصی برای کدهای خطا مانند 404 و 500 ✅

ج) تنظیم مستقیم در فایل urls.py

د) تعریف فایل‌های HTML اختصاصی در پوشه templates

 

  1. برای افزایش امنیت رمز عبور کاربران در جنگو، کدام مورد از تنظیمات مناسب‌تر است؟

الف) استفاده از PASSWORD_HASHERS برای الگوریتم‌های هش قوی

ب) استفاده از bcrypt یا argon2

ج) تعریف محدودیت طول رمز عبور و سیاست‌های سخت‌گیرانه

د) تمامی موارد بالا ✅

 

  1. در زمان استفاده از متد annotate() در QuerySet، چه هدفی دنبال می‌شود؟

الف) انجام عملیات CRUD در دیتابیس

ب) فیلترگذاری بر اساس مقادیر خاص

ج) افزودن فیلدهای محاسباتی به نتیجه QuerySet ✅

د) بازنویسی ساختار مدل‌ها

 

  1. برای ایجاد فیلترهای سفارشی در Template جنگو، از کدام ابزار استفاده می‌شود؟

الف) افزودن تابع در فایل views.py

ب) تعریف یک تابع در فایل templatetags ✅

ج) استفاده از فایل settings.py

د) بازنویسی کلاس‌های پایه Template

 

  1. در جنگو، متد get_object_or_404() چه زمانی استفاده می‌شود؟

الف) برای فیلتر کردن نتایج QuerySet

ب) برای اعتبارسنجی داده‌های ارسال شده

ج) برای دریافت یک شیء از پایگاه داده و مدیریت خطای 404 در صورت عدم وجود آن ✅

د) برای ذخیره داده‌ها در پایگاه داده

 

  1. کدام دستور برای اجرای سرور توسعه در جنگو استفاده می‌شود؟

الف) django runserver

ب) python manage.py runserver ✅

ج) python manage.py server

د) django manage.py runserver

 

  1. برای افزودن یک مسیر URL به پروژه جنگو، در کدام فایل باید تغییرات ایجاد کرد؟

الف) models.py

ب) settings.py

ج) views.py

د) urls.py ✅

 

  1. برای تعریف یک رابطه یک به چند بین دو مدل در جنگو، از کدام فیلد استفاده می‌شود؟

الف) OneToOneField

ب) ManyToManyField

ج) ForeignKey ✅

د) CharField

 

  1. کدام دستور برای ایجاد یک Migration جدید در جنگو استفاده می‌شود؟

الف) python manage.py migrate

ب) python manage.py makemigrations ✅

ج) python manage.py create_migration

د) python manage.py apply_migration

 

  1. در جنگو، برای تعریف یک مسیر URL با پارامتر ورودی، کدام ساختار صحیح است؟

الف) path(‘<int:id>/’, view_function) ✅

ب) url(‘<id:int>/’, view_function)

ج) path(‘id<int>/’, view_function)

د) url(‘int:id/’, view_function)

 

  1. برای تعریف یک مدل در جنگو، کدام کلاس پایه استفاده می‌شود؟

الف) django.db.Model

ب) django.models.Model

ج) django.db.models.Model ✅

د) django.core.Model

 

  1. برای استفاده از فایل‌های استاتیک (مانند CSS و JavaScript) در جنگو، کدام دستور ضروری است؟

الف) collectstatic

ب) staticfiles

ج) load static ✅

د) serve static

 

  1. کدام متد برای حذف یک شیء از پایگاه داده در جنگو استفاده می‌شود؟

الف) remove()

ب) delete() ✅

ج) destroy()

د) clear()

 

  1. در جنگو، تنظیم ALLOWED_HOSTS در فایل settings.py چه کاربردی دارد؟

الف) تعیین دامنه‌هایی که مجاز به دسترسی به سرور هستند ✅

ب) تعریف نام سرور در محیط تولید

ج) تنظیم مسیرهای استاتیک

د) تعریف پایگاه داده‌های مجاز

 

  1. برای اجرای یک تابع در زمان ذخیره شیء در مدل جنگو، از کدام متد استفاده می‌شود؟

الف) insert()

ب) store()

ج) commit()

د) save() ✅

 

  1. در جنگو، فایل requirements.txt برای چه استفاده می‌شود؟

الف) تعیین تنظیمات پایگاه داده

ب) تعریف وابستگی‌های پروژه و نصب پکیج‌ها ✅

ج) مدیریت مسیرهای استاتیک

د) تعریف متغیرهای محیطی

 

  1. برای استفاده از QuerySetهای خام در جنگو، کدام متد استفاده می‌شود؟

الف) query()

ب) filter()

ج) raw() ✅

د) execute()

 

  1. در جنگو، برای تعریف یک مسیر ثابت (Static Path) در URL، کدام گزینه صحیح است؟

الف) include(‘home/’, view_function)

ب) url(‘home/’, view_function)

ج) static(‘home/’, view_function)

د) path(‘home/’, view_function) ✅

 

  1. برای اعتبارسنجی فرم در جنگو، کدام متد استفاده می‌شود؟

الف) is_valid() ✅

ب) validate()

ج) check()

د) verify()

 

  1. برای سفارشی‌سازی نام مدل در پنل مدیریت جنگو، از کدام خاصیت استفاده می‌شود؟

الف) model_name

ب) admin_label

ج) verbose_name ✅

د) display_name

 

  1. کدام متد از کلاس‌های View در جنگو برای مدیریت درخواست‌های POST استفاده می‌شود؟

الف) get()

ب) post() ✅

ج) handle_post()

د) request_post()

 

  1. برای ثبت مدل‌ها در پنل مدیریت جنگو، کدام دستور استفاده می‌شود؟

الف) admin.register_model()

ب) admin.site.register() ✅

ج) admin.add_model()

د) admin.site.add()

 

  1. در جنگو، برای غیرفعال کردن قابلیت Auto Increment کلید اصلی (Primary Key) در مدل، چه باید انجام داد؟

الف) تعریف فیلد کلید اصلی به‌صورت دستی ✅

ب) تنظیم خاصیت auto_increment=False

ج) استفاده از فیلد UUIDField

د) تنظیم خاصیت primary_key=False

 

  1. در جنگو، کدام تنظیم برای ذخیره فایل‌های آپلود شده توسط کاربر استفاده می‌شود؟

الف) UPLOAD_ROOT و UPLOAD_URL

ب) STATICFILES_DIRS و STATIC_URL

ج) MEDIA_ROOT و MEDIA_URL ✅

د) FILE_PATH و FILE_URL

 

  1. برای اجرای عملیات مربوط به Sign-In و Sign-Out کاربران، کدام ماژول پیش‌تعریف‌شده در جنگو استفاده می‌شود؟

الف) django.contrib.sessions

ب) django.contrib.auth ✅

ج) django.contrib.admin

د) django.core.auth

 

  1. در جنگو، برای تعریف متغیرهای Context در Viewها، کدام کلاس یا متد استفاده می‌شود؟

الف) Context()

ب) render() ✅

ج) TemplateResponse()

د) HttpResponse()

 

  1. کدام متد از کلاس‌های فرم در جنگو برای پاکسازی داده‌های یک فیلد خاص استفاده می‌شود؟

الف) clean_fieldname() ✅

ب) clean()

ج) validate_fieldname()

د) check_fieldname()

 

  1. برای اجرای درخواست‌های Ajax در جنگو، کدام متد برای تشخیص درخواست‌های Ajax استفاده می‌شود؟

الف) request.is_ajax_call()

ب) request.is_ajax_request()

ج) request.is_ajax() ✅

د) request.is_json()

 

  1. در جنگو، برای ایجاد یک رابطه Many-to-Many بین دو مدل، از کدام فیلد استفاده می‌شود؟

الف) OneToOneField

ب) ForeignKey

ج) ManyToManyField ✅

د) RelationField

 

  1. کدام متد از Viewهای جنگو برای ارسال داده به Template استفاده می‌شود؟

الف) get_context_data() ✅

ب) load_context()

ج) send_context()

د) render_context()

 

  1. برای مدیریت کش در جنگو، کدام تنظیم باید پیکربندی شود؟

الف) CACHE_ROOT

ب) CACHE_BACKEND

ج) CACHE_SETTINGS

د) CACHES ✅

 

  1. در جنگو، برای تولید یک کلید یکتا (UUID) به‌صورت پیش‌فرض در مدل، کدام گزینه صحیح است؟

الف) primary_key=True

ب) default=uuid4 ✅

ج) default=generate_uuid

د) unique=True

 

  1. برای اضافه کردن داده‌های اولیه به مدل‌ها در زمان Migration، از کدام فایل استفاده می‌شود؟

الف) initial_data.json

ب) seed_data

ج) fixtures ✅

د) populate.py

 

  1. در جنگو، برای محدود کردن دسترسی به View فقط برای کاربران دارای یک مجوز خاص، از کدام Decorator استفاده می‌شود؟

الف) @permission_required ✅

ب) @login_required

ج) @require_permission

د) @authenticate

 

  1. کدام ابزار جنگو برای تست Viewها به‌صورت مستقیم از سطح URL استفاده می‌شود؟

الف) django.test.URLTest

ب) django.test.TestCase

ج) django.core.testing

د) django.test.Client ✅

 

  1. برای استفاده از تنظیمات مختلف محیطی (مانند توسعه، تولید و تست) در جنگو، کدام روش مناسب‌تر است؟

الف) استفاده از فایل‌های محیطی مانند .env

ب) تعریف تنظیمات جداگانه و انتخاب آن‌ها با متغیر محیطی

ج) استفاده از settings_module در فایل manage.py

د) تمامی موارد بالا ✅

تور شروع یک پروژه جنگو جدید به نام “myproject” چیست؟

الف) django-admin.py startproject myproject ✅

ب) django-admin.py -start

ج) django.py startproject myproject

د) django.py -new myproject

 

  1. در جنگو چگونه می‌توانید تمام رکوردهای “کاربر” را از یک پایگاه داده معین بازیابی کنید؟

الف) User.objects.all() ✅

ب) User.objects.all()

ج) User.all_records()

د) User.object.all()

 

  1. دستور جنگو «manage.py validate» چه کاری انجام می‌دهد؟

الف) خطاهای موجود در نظرات شما را بررسی می‌کند

ب) خطاهای موجود در قالب‌های شما را بررسی می‌کند

ج) خطاهای موجود در کنترلرهای خود را بررسی می‌کند

د) خطاهای موجود در مدل‌های شما را بررسی می‌کند ✅

 

  1. کدام‌یک از گزینه‌های زیر در ابتدای ایجاد یک اپلیکیشن جدید به‌صورت پیش‌فرض ایجاد نمی‌شود و کاربر می‌بایست آن را ایجاد نماید؟

الف) Views.py

ب) Models.py

ج) Templates.py ✅

د) Apps.py

 

  1. فرض کنید برای صفحه درباره ما یک تابع در ویوو با عنوان about_us نوشته شده و قصد داریم در بخش urls.py به آن مسیردهی کنیم. کدام‌یک از گزینه‌های زیر با توجه به دستورالعمل جنگو به‌طور صحیح نوشته شده است؟

الف) rout(about_us, ‘about-us/’, name=’about-us’)

ب) path(‘about-us/’, about_us, name=’about-us’) ✅

ج) rout(‘about-us/’, about_us, name=’about-us’)

د) path(‘about-us/’, `about_us`, name=’about-us’)

 

  1. چگونه می‌توانید رفتار و ویژگی‌های اضافی یک کلاس جنگو را تعریف کنید؟

الف) __class __init:

ب) def Meta():

ج) def setUp():

د) class Meta: ✅

 

  1. فیلتر «ایمن» داخلی قالب جنگو چه می‌کند؟

الف) یک رشته را به عنوان عدم نیاز به فرار بیشتر HTML قبل از خروجی علامت‌گذاری می‌کند ✅

ب) از پردازش الگو خارج می‌شود و بقیه الگو را نادیده می‌گیرد

ج) تگ HTML بعدی را قفل می‌کند تا در اشکال‌زدایی مرورگر قابل تغییر نباشد

د) یک رشته را به عنوان نیاز به فرار HTML قبل از خروجی علامت‌گذاری می‌کند

 

  1. در کدام‌یک از بخش‌های زیر می‌توان تغییرات مربوط به پایگاه داده را انجام داد؟

الف) Admin.py

ب) Settings.py ✅

ج) Wsgi.py

د) Database.py

 

  1. برای اجرا کردن سرور و نمایش وب‌سایت طراحی شده توسط فریم‌ورک جنگو کدام دستور را می‌بایست تایپ نمود؟

الف) python manage.py makemigrations

ب) python manage.py startproject

ج) python manage.py startapp

د) python manage.py runserver ✅

 

  1. کدام‌یک از گزینه‌های زیر نقش view را در معماری MVC جنگو ایفا می‌کند؟

الف) Templates ✅

ب) Models

ج) Urls

د) Sites

 

  1. از دستور pip برای چه استفاده می‌شود؟

الف) نصب کتابخانه‌های پایتون ✅

ب) سازماندهی کتابخانه‌های پایتون

ج) مدیریت اطلاعات ورودی

د) حذف اطلاعات غیرضروری دریافتی template

 

  1. کدام کتابخانه جنگو یک محیط مجازی امن تست و توسعه شده می‌سازد؟

الف) virtualenv ✅

ب) Pyramid

ج) CubicWeb

د) Flask

 

  1. تنظیمات مربوط به دیتابیس‌ها (DATABASES) در کجا ذخیره شده است؟

الف) Models.py

ب) admin.py

ج) asgi.py

د) Settings.py ✅

 

  1. در کلید ENGINE که در settings.py در بخش تنظیمات دیتابیس قرار دارد، برای کدام دیتابیس از مقدار django.db.backends.mysql استفاده می‌شود؟

الف) MySQL MariaDB ✅

ب) MarjinzDB

ج) SQLite3

د) Marsqlacsess

 

  1. پس از آنکه کاربر آدرس یا منبع درخواستی خود را در مرورگر وارد می‌کند، در جنگو چه عملی رخ می‌دهد؟

الف) در بخش view.py درخواست کاربر پردازش می‌شود

ب) جنگو منبع درخواست کاربر را با الگوهای urls.py پروژه تطبیق می‌دهد ✅

ج) نتایج در template جنگو درج می‌شود

د) پس از مشخص شدن اپلیکیشن فراخوانی شده درخواست به سوی آن هدایت می‌شود

 

  1. دستور جنگو «manage.py shell» چه کار می‌کند؟

الف) یک خط فرمان را در هر $SHELL که محیط شما استفاده می‌کند، راه‌اندازی می‌کند.

ب) یک خط فرمان جنگو را با محیط پایتون شما از قبل بارگذاری شده راه‌اندازی می‌کند.

ج) یک خط فرمان پایتون را با محیط جنگو شما از پیش بارگذاری شده راه‌اندازی می‌کند. ✅

د) یک نسخه پایتونیک ویژه از پوسته Bash را بارگیری می‌کند.

 

  1. کدام یک از فریم‌ورک‌های زیر برای ساخت api نمی‌توان استفاده کرد؟

الف) django

ب) DRF

ج) Flask

د) laravel ✅

 

  1. مزایای استفاده از کتابخانه جنگو؟

الف) پشتیبانی یک زبان

ب) عدم پشتیبانی از پلتفرم‌های مختلف توسعه وب

ج) محیط توسعه ✅

د) واسط کاربری بیسیک

 

  1. کدام یک از مهم‌ترین اصول فلسفه طراحی کتابخانه جنگو نمی‌باشد؟

الف) کد نویسی کمتر

ب) طراحی تمیز

ج) توسعه سریع

د) اصل تکرار پذیری ✅

 

  1. منظور از گلوبال اسکوپ (global scope) چیست؟

الف) اشیاء محلی موجود در تابع کنونی است.

ب) اشیاء موجود در سرتاسر اجرای کد از زمان ایجاد آن‌ها است.

ج) اشیاء کلی ماژول کنونی است که در برنامه قابل دسترسی هستند. ✅

د) تمامی نام‌های توکار قابل فراخوانی در اپلیکیشن است.

 

  1. منظور از پاس در پایتون چیست؟

الف) در رابطه با ماژول‌ها و پکیج‌ها در این زبان برنامه‌نویسی است.

ب) سازوکاری هستند که امکان برنامه‌نویسی ماژولار در پایتون را فراهم می‌آورند

ج) نشان‌دهنده یک عملیات بی‌اثر (null operation) است ✅

د) احتمال خطا را کاهش می‌دهد.

 

  1. کدام گزینه نشان‌دهنده یک عملیات بی‌اثر است؟

الف) functions

ب) null operation ✅

ج) dot notation

د) from foo import

 

  1. به طور کلی می‌توان گفت که ماژول‌ها، فایل‌های پایتون دارای پسوند …… هستند.

الف) tif

ب) sys

ج) exe

د) py ✅

 

  1. تعریف ماژول‌ها چیست؟

الف) به عدم تصادم بین نام‌های ماژول‌ها کمک می‌کنند

ب) برای جلوگیری از تصادم بین نام‌های متغیر گلوبال کمک می‌کنند

ج) ماژول‌های درون پکیج به درون فضای نامی محلی، ایمپورت می‌شوند ✅

د) ماژول‌های درون پکیج به درون فضای نامی محلی، استیتمنت نمی‌شوند

 

  1. کدام‌یک از حلقه‌های تکرار زیر از لحاظ دستورالعمل جنگو به درستی در template نوشته شده است؟

الف) {% for athlete in athlete_list %}: <p>{{ athlete.name }}</p> {% endfor %}

ب) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p>

ج) { for athlete in athlete_list } <p>{{ athlete.name }}</p> endfor {

د) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p> {% endfor %} ✅

 

  1. اگر قصد داشته باشیم فقط یک آرایه را از پایگاه داده فراخوانی کنیم کدام‌یک از دستورات زیر صحیح می‌باشد؟

الف) ModelName.objects.all()

ب) ModelName.objects.one()

ج) ModelName.objects.get() ✅

د) ModelName.objects.filter()

 

  1. کدام‌یک از دستورات زیر در جنگو برای راه‌اندازی یک برنامه جدید به نام “users” استفاده می‌شود؟

الف) manage.py startapp users ✅

ب) manage.py start users

ج) manage.py –startapp users

د) manage.py –new app users

 

  1. در مورد تفاوت بین پروژه و اپلیکیشن در جنگو کدام مورد زیر صحیح می‌باشد؟

الف) اپلیکیشن برای بارگذاری بر روی موبایل طراحی می‌شود اما پروژه هم برای موبایل و هم برای وب‌سایت طراحی و اجرا می‌شود

ب) اپلیکیشن یک برنامه بر مبنای وب است که برای انجام کار مشخصی ساخته می‌شود اما یک پروژه مجموعه‌ای از یک و یا تعدادی از اپلیکیشن‌ها می‌باشد که هر اپلیکیشن وظیفه خاصی از پروژه را شامل می‌شود. ✅

ج) اپلیکیشن به مجموعه‌ای از پروژه‌های تحت وب اطلاق می‌شود که هر کدام وظیفه مشخصی در برنامه را بر عهده دارند.

د) اپلیکیشن تحت وب طراحی می‌شود اما پروژه یک مفهوم کلی در برنامه‌نویسی است که ارتباط مستقیمی با اپلیکیشن ندارد.

 

  1. کدام‌یک از موارد زیر جزو آرگومان‌های رایج فیلدها در Django نیست؟

الف) verbose_name

ب) null

ج) blank

د) avatar ✅

 

  1. Django Rest Framework در جنگو چه وظیفه‌ای بر عهده دارد؟

الف) در ایجاد API به فریم‌ورک جنگو کمک می‌کند ✅

ب) وظیفه اعتبارسنجی فرم‌ها را بر عهده دارد

ج) وظیفه سازماندهی توابع جنگو را بر عهده دارد

د) وظیفه سازماندهی و اعتبارسنجی توابع جنگو را بر عهده دارد

 

  1. فرض کنید قصد داریم نسخه جنگو 2.2.11 را نصب کنیم. کدام دستور صحیح می‌باشد؟

الف) python -m pip install django=2.2.11

ب) python -m pip install django(2.2.11)

ج) python -m pip install django=(“2.2.11”)

د) python -m pip install django==2.2.11 ✅

 

  1. با کمک کدام‌یک از دستورات زیر می‌توان یک محیط مجازی در جنگو و داخل دایرکتوری env ایجاد نمود؟

الف) python -m venv env ✅

ب) python -r venv env

ج) python -m env

د) python -r env

 

  1. کدام مورد جزو مزایای استفاده از فریم‌ورک جنگو نمی‌باشد؟

الف) امنیت بالایی را به صاحبان پروژه هدیه می‌دهد

ب) امکان توسعه سریع وب در آن وجود دارد

ج) حجم بالایی از کتابخانه‌ها را در اختیار برنامه‌نویس قرار می‌دهد

د) تمامی خطاهایی که به توسعه‌دهنده نمایش می‌دهد روشن و شفاف هستند ✅

 

  1. کدام‌یک از موارد زیر ORM در جنگو را به درستی توصیف می‌کند؟

الف) ORM به ما اجازه می‌دهد به صورت شیءگرا با دیتابیس ارتباط برقرار کنیم ✅

ب) یکی از معماری‌های جنگو است که صرفاً وظیفه کنترل Viewهای پروژه را بر عهده دارد

ج) بدون استفاده از ORM نمی‌توان از پروژه خروجی گرفت

د) ORM یکی از کتابخانه‌های جنگو است که برای ایجاد نمودارهای گرافیکی از آن استفاده می‌شود

 

  1. پس از ساختن یک “برنامه” جدید در پروژه جنگو موجود، چگونه می‌توانید جنگو را متوجه آن کنید؟

الف) هیچ اقدام اضافی مورد نیاز نیست، جنگو به طور خودکار متوجه برنامه‌های جدید می‌شود.

ب) دستور «manage.py validate» را اجرا کنید و سپس یک پوسته جدید راه‌اندازی کنید.

ج) دستور «manage.py syncdb» را اجرا کنید.

د) در settings.py، برنامه جدید را به متغیر INSTALLED_APPS اضافه کنید. ✅

 

  1. هدف settings.py چیست؟

الف) برای پیکربندی تنظیمات پروژه جنگو ✅

ب) پیکربندی تنظیمات برای یک برنامه

ج) تنظیم تاریخ و زمان در سرور

د) همگام‌سازی طرح پایگاه داده پاسخ

 

  1. نحوه صحیح برای گنجاندن نمای کلاسی در URLconf چیست؟

الف) (r’^pattern/$’, YourView.as_view()), ✅

ب) (r’^pattern/$’, YourView.init()),

ج) (r’^pattern/$’, YourView),

د) (r’^pattern/$’, YourView()),

 

  1. دستور شروع یک پروژه جنگو جدید به نام “myproject” چیست؟

الف) django-admin.py startproject myproject ✅

ب) django-admin.py -start

ج) django.py startproject myproject

د) django.py -new myproject

 

  1. کدام گزینه صحیح نمی‌باشد؟

الف) manage.py: یک ابزار خط فرمان است که به ما این امکان را می‌دهد که با پروژه جنگو خود ارتباط داشته باشیم؟

ب) settings.py: اطلاعات مربوط به تنظیمات اصلی پروژه می‌باشد.

ج) urls.py: تمام مسیرهای پروژه را در خود جای داده است.

د) Views: وظیفه ارتباط مستقیم اپلیکیشن با دیتابیس را بر عهده دارد ✅

 

  1. کدام یک از گزینه‌های زیر در ابتدای ایجاد یک اپلیکیشن جدید به صورت پیش‌فرض ایجاد نمی‌شود و کاربر می‌بایست آن را ایجاد نماید؟

الف) Views.py

ب) Models.py

ج) Templates.py ✅

د) Apps.py

 

  1. برای اجرا کردن سرور و نمایش وب‌سایت طراحی شده توسط فریم‌ورک جنگو کدام دستور را می‌بایست تایپ نمود؟

الف) python manage.py makemigrations

ب) python manage.py startproject

ج) python manage.py startapp

د) python manage.py runserver ✅

 

  1. کدام یک از گزینه‌های زیر نقش view را در معماری MVC جنگو ایفا می‌کند؟

الف) Templates ✅

ب) Models

ج) Urls

د) sites

 

  1. کدام یک از حلقه‌های تکرار زیر از لحاظ دستورالعمل جنگو به درستی در template نوشته شده است؟

الف) {% for athlete in athlete_list %}: <p>{{ athlete.name }}</p> {% endfor %}

ب) {% for athlete in athlete_list %} <p>{{ athletename }}</p>

ج) { for athlete in athlete_list } <p>{{ athlete.name }}</p> { endfor }

د) {% for athlete in athlete_list %} <p>{{ athlete.name }}</p> {% endfor %} ✅

 

  1. اگر قصد داشته باشیم فقط یک آرایه را از پایگاه داده فراخوانی کنیم کدام یک از دستورات زیر صحیح می‌باشد؟

الف) ModelName.objects.all()

ب) ModelName.objects.one()

ج) ModelName.objects.get() ✅

د) ModelName.objects.filter()

 

  1. فیلتر «ایمن» داخلی قالب جنگو چه می‌کند؟

الف) یک رشته را به عنوان عدم نیاز به فرار بیشتر HTML قبل از خروجی علامت‌گذاری می‌کند ✅

ب) از پردازش الگو خارج می‌شود و بقیه الگو را نادیده می‌گیرد

ج) تگ HTML بعدی را قفل می‌کند تا در اشکال‌زدایی مرورگر قابل تغییر نباشد

د) یک رشته را به عنوان نیاز به فرار HTML قبل از خروجی علامت‌گذاری می‌کند

 

  1. معرفی مسیر Static ها در جنگو به چه صورت است؟

الف) STATICFILES_DIRS = [os.path.join(BASE_DIR,’static’)] ✅

ب) MEDIA_URL = ‘/media/’

ج) STATICFILES_DIRS = [os.path.join(BASE_DIR,media)]

د) STATIC_URL = os.path.join(BASE_DIR,’static’)

 

  1. در مورد تفاوت بین پروژه و اپلیکیشن در جنگو کدام مورد زیر صحیح می‌باشد؟

الف) اپلیکیشن برای بارگذاری بر روی موبایل طراحی می‌شود اما پروژه هم برای موبایل و هم برای وب‌سایت طراحی و اجرا می‌شود

ب) اپلیکیشن یک برنامه بر مبنای وب است که برای انجام کار مشخصی ساخته می‌شود اما یک پروژه مجموعه‌ای از یک و یا تعدادی از اپلیکیشن‌ها می‌باشد که هر اپلیکیشن وظیفه خاصی از پروژه را شامل می‌شود. ✅

ج) اپلیکیشن به مجموعه‌ای از پروژه‌های تحت وب اطلاق می‌شود که هر کدام وظیفه مشخصی در برنامه را بر عهده دارند.

د) اپلیکیشن تحت وب طراحی می‌شود اما پروژه یک مفهوم کلی در برنامه‌نویسی است که ارتباط مستقیمی با اپلیکیشن ندارد.

 

  1. model user در جنگو به صورت پیش‌فرض دارای چه فیلدهایی می‌باشد؟

الف) username , password , email , full_name

ب) username , password , email , first_name , last_name , thumbnail

ج) username , password , email , first_name , last_name ✅

د) username , password , email , full_name , image

 

  1. Django Rest Framework در جنگو چه وظیفه‌ای بر عهده دارد؟

الف) در ایجاد API به فریم‌ورک جنگو کمک می‌کند ✅

ب) وظیفه اعتبارسنجی فرم‌ها را بر عهده دارد

ج) وظیفه سازماندهی توابع جنگو را بر عهده دارد

د) وظیفه سازماندهی و اعتبارسنجی توابع جنگو را بر عهده دارد

 

  1. Jinja Templating یک موتور قالب بسیار محبوب برای ……… است.

الف) Java Scripts

ب) React Native

ج) Python ✅

د) CSS

 

  1. با کمک کدام یک از دستورات زیر می‌توان یک محیط مجازی در جنگو و داخل دایرکتوری env ایجاد نمود؟

الف) python -m venv env ✅

ب) python -r venv env

ج) python -m env

د) python -r env

 

  1. کدام مورد جزو مزایای استفاده از فریم‌ورک جنگو نمی‌باشد؟

الف) امنیت بالایی را به صاحبان پروژه هدیه می‌دهد

ب) امکان توسعه سریع وب در آن وجود دارد

ج) حجم بالایی از کتابخانه‌ها را در اختیار برنامه‌نویس قرار می‌دهد

د) تمامی خطاهایی که به توسعه‌دهنده نمایش می‌دهد روشن و شفاف هستند ✅

 

  1. دستورات مربوط به ایجاد جداول در پایگاه داده در کدام فایل پروژه نوشته می‌شود؟

الف) views.py

ب) admin.py

ج) models.py ✅

د) wsgi.py

 

  1. اگر بخواهیم تمامی object های یک مدل تحت عنوان User را از پایگاه داده فراخوانی کنیم از کدام دستور زیر می‌بایست استفاده کنیم؟

الف) User.objects(all)

ب) User.all_objects()

ج) User(objects).all

د) User.objects.all() ✅

 

  1. در جنگو از چه دیتابیس‌هایی می‌توان استفاده کرد؟

الف) MySQL MariaDB MongoDB ✅

ب) MongDB User

ج) MariaDB User

د) User.objects.all

 

  1. پس از تعریف یک مدل در محیط جنگو چه اتفاقی می‌افتد؟

الف) یک template برای آن ایجاد می‌شود

ب) یک جدول برای آن در دیتابیس ساخته می‌شود ✅

ج) یک جدول برای آن در setting ساخته می‌شود

د) یک url برای آن ایجاد می‌شود

 

  1. کدام بخش در یک اپلیکیشن جنگو تصمیم می‌گیرد که چه داده‌هایی باید از دیتابیس به قالب تحویل داده شوند؟

الف) Views.py ✅

ب) Urls

ج) Models.py

د) Forms.py

 

  1. جنگو را بر روی چه سیستم عاملی می‌شود نصب کرد؟

الف) مک، لینوکس، windows ✅

ب) dos

ج) Dos , windows

د) Mac & dos

 

  1. کدام گزینه از بخش‌های url می‌باشد؟

الف) host name

ب) path

ج) query string

د) همه موارد ✅

 

  1. prepopulated_fields = {‘slug’:(‘title’,)} چه کاری انجام می‌دهد؟

الف) با وارد کردن هر تکستی در فیلد title ، آن تکست همزمان در فیلد slug قرار می‌گیرد. ✅

ب) با وارد کردن هر تکستی در فیلد slug ، آن تکست همزمان در فیلد title قرار می‌گیرد

ج) تکست در فیلد title نمی‌تواند در فیلد slug باشد.

د) تکست در فیلد slug نمی‌تواند در فیلد title باشد.

 

  1. در کلید ATOMIC_REQUESTS که در settings.py در بخش تنظیمات دیتابیس قرار دارد، اگر True تنظیم شود چه می‌شود؟

الف) مدیریت commit تراکنش‌ها به عهده ادمین می‌شود

ب) مدیریت commit تراکنش‌ها توسط دیتابیس به صورت خودکار انجام می‌شود

ج) اگر در حین پردازش درخواست خطایی رخ ندهد جنگو آن تراکنش را commit می‌کند ✅

د) یک لینک ارتباطی نامحدود و دائمی ایجاد می‌شود

 

  1. کدام گزینه ترتیب اتفاقات افتاده در جنگو پس از ارسال درخواست از سوی کاربر به درستی بیان می‌کند؟

الف) Template,url,view

ب) url,view,template ✅

ج) url,template,view

د) view,template,url

 

  1. با توجه به مدلی به نام “کاربر” که حاوی یک فیلد DateTime به نام “last_login” است، چگونه برای کاربرانی که هرگز وارد سیستم نشده‌اند پرس و جو می‌کنید؟

الف) User.objects.filter( last_login=Null)

ب) User.objects.filter( last_login__null=True)

ج) User.objects.filter( last_login__isnull=False)

د) User.objects.filter( last_login__isnull=True) ✅

 

  1. کدام یک از فریم‌ورک‌های زیر برای ساخت api نمی‌توان استفاده کرد؟

الف) django

ب) DRF

ج) Flask

د) laravel ✅

 

  1. کدام یک از گزینه‌های زیر جز محیط‌های توسعه جنگو نمی‌باشد؟

الف) نصب راه‌اندازی python

ب) نصب راه‌اندازی پایتون در django

ج) نصب راه‌اندازی سیستم پایگاه داده

د) نصب راه‌اندازی Flask ✅

 

  1. کدام بنیاد فریم‌ورک وب جنگو را مدیریت می‌کند؟

الف) بنیاد Disqus، سال‌هاست که جنگو را مدیریت و استفاده می‌کنند.

ب) چارچوب وب جنگو توسط یک سازمان مستقل و غیرانتفاعی به نام بنیاد (DSF) مدیریت و نگهداری می‌شود ✅

ج) بنیاد Pinterest ، جنگو را مدیریت و استفاده می‌کنند.

د) بنیاد Mozilla جنگو را مدیریت و استفاده می‌کنند.

 

  1. برنامه‌ای که قاعده و ارتفاع متوازی‌الاضلاع را خوانده، مساحت آن را نمایش می‌دهد؟

الف) base = float(input(“length of base: “)) height = float(input(‘measurement of height: ‘)) area = base*height print(“Area is:”, area) نتیجه: length of base: 22 measurement of height: 2555 Area is: 02352

ب) length of base: 22 measurement of height: 2555 Area is

ج) length of base: 22 measurement of height is: 02352

د) length of base of height: 2555 Area is: 02352 ✅

 

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

الف) Height of cylinder: 02 radius of cylinder: 0 Volum is: 052520353220353220

ب) Height of cylinder: 02 radius of cylinder: 0 Volum is: 052520353220353220 surface Area is: 031553220353220351 ✅

ج) Height of cylinder of cylinder: 0 Volum is: 052520353220353220

د) Height of cylinder: 02 er: 0 Volum is: 052520353220353220

 

  1. هر سال برابر با 0.959*931 ثانیه است. برنامه‌ای که سن شما را دریافت کرده و به ثانیه تبدیل می‌کند؟

الف) Enter age:78 Second= 252788333323 ✅

ب) ss = 4.102e7; radian = float(input(‘Radius of sphere: ‘)) sur_area = 4*pi*radian**2 volume =

ج) radian = float(input(‘Radius of sphere: ‘)) sur_area = 4*pi*radian**2 volume =

د) radian = float(input(sur_area = 4*pi*radian**2 volume =

 

  1. پایتون چیست؟

الف) پایتون یک زبان برنامه‌نویسی سطح پایین، چندمنظوره

ب) جهت الگوریتم نویسی استفاده می‌شود

ج) پایتون یک زبان برنامه‌نویسی سطح بالا، چندمنظوره، تفسیری و شیءگرا است که توسعه آن به سال 1991 توسط گودیو فان روزن، باز می‌گردد. ✅

د) پایتون یک زبان برنامه‌نویسی سطح میانی، تک منظوره است

 

  1. منظور از لوکال اسکوپ (local scope)، چیست؟

الف) اشیاء موجود در سرتاسر اجرای کد از زمان ایجاد آن‌ها است.

ب) اشیاء کلی ماژول کنونی است که در برنامه قابل دسترسی هستند.

ج) اشیاء محلی موجود در تابع کنونی است. ✅

د) تمامی نام‌های توکار قابل فراخوانی در اپلیکیشن است.

 

  1. تعریف ماژول‌ها چیست؟

الف) به عدم تصادم بین نام‌های ماژول‌ها کمک می‌کنند

ب) برای جلوگیری از تصادم بین نام‌های متغیر گلوبال کمک می‌کنند

ج) ماژول‌های درون پکیج به درون فضای نامی محلی، ایمپورت می‌شوند ✅

د) ماژول‌های درون پکیج به درون فضای نامی محلی، استیتمنت نمی‌شوند

 

  1. منظور از ویژگی‌های سراسری چیست؟

الف) ویژگی‌هایی هستند که با پیشوند «_» برای شناساگرهای خود، تعریف می‌شوند

ب) ویژگی‌هایی هستند که دارای دو پیشوند «__» هستند

ج) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند ✅

د) یک کلمه و ویژگی کلیدی در پایتون است

 

  1. ویژگی‌های حفاظت شده (protected) چیست؟

الف) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند

ب) اگر برای این کار، تلاش کنید، با خطای AttributeError مواجه خواهید شد.

ج) برای تعریف یک مورد از یک شیء از یک کلاس استفاده می‌شود.

د) ویژگی‌هایی هستند که با پیشوند «_» برای شناساگرهای خود، تعریف می‌شوند ✅

 

  1. منظور از self در پایتون چیست؟

الف) متغیرهایی عمومی هستند که در اسکوپ گلوبال تعریف شده‌اند

ب) یک کلمه کلیدی در پایتون است که برای تعریف یک مورد از یک شیء از یک کلاس استفاده می‌شود ✅

ج) به این معنی که دیتا تایپ ردیف باید یکنواخت یا همگن باشد

د) ویژگی‌هایی هستند که دارای دو پیشوند «__» هستند

 

  1. لیست‌ها در پایتون می‌توانند حاوی ………………….. مختلف باشند.

الف) شناساگر

ب) عناصر دیتا تایپ‌های ✅

ج) ویژگی‌ها

د) پسوند و پیشوند

 

  1. مدیریت حافظه در پایتون توسط Python Memory Manager انجام می‌شود؟

الف) private heap space

ب) grabage collector

ج) Python Memory Manager ✅

د) manager

 

  1. فضای نامی محلی چیست؟

الف) شامل توابع توکار هسته پایتون و نام‌های توکار برای انواع مختلف اجراء است.

ب) شامل نام‌های محلی درون یک تابع است. این فضای نامی به صورت موقت برای یک فراخوانی تابع ساخته شده و زمانی که تابع بازگردد، پاک می‌شود. ✅

ج) فضای نامی بیرونی‌تر از یک فضای نامی درونی‌تر، وجود ندارد.

د) فضای اختصاص داده شده توسط manager به شکل یک فضای خصوصی

 

  1. منظور از دکوراتورها در پایتون چیست؟

الف) یک تابع بدون نام در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

ب) توابعی ضروری هستند که به یک تابع موجود در پایتون، بدون تغییر ساختار خود تابع، عملکرد اضافه می‌کنند ✅

ج) یک تابع با نام در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

د) یک تابع با نام یکتا و مشخص در پایتون است که می‌تواند هر تعدادی از آرگومان‌ها را بپذیرد

 

  1. Pickling در پایتون به چه معنی است؟

الف) جریان بایت را از حالت سریالی خارج می‌کند تا اشیاء ذخیره شده در فایل را بازسازی کند

ب) یک متغیر محیطی است

ج) نام فرآیند سریال‌سازی در پایتون است. هر شیء در پایتون را می‌توان به صورت یک جریان بایت، سریال‌سازی نمود ✅

د) فهرست صحیحی از ویژگی‌ها و روش‌های شیء که بر روی آن‌ها فراخوانی شده است

 

  1. Unpickling در پایتون به چه معنی است؟

الف) نام فرآیند سریال‌سازی در پایتون است.

ب) یعنی هر شیء در پایتون را می‌توان به صورت یک جریان بایت، سریال‌سازی نمود

ج) به معنی این است که اشیاء pickle را می‌توان بیشتر هم فشرده کرد

د) این فرآیند، جریان بایت را از حالت سریالی خارج می‌کند تا اشیاء ذخیره شده در فایل را بازسازی کرده و شیء را در حافظه بارگذاری کند. ✅

 

  1. تابعی که برای فرآیند pickling به کار می‌رود به چه صورت است:

الف) pickle.dump() ✅

ب) pickle.dump()

ج) help()

د) dir()

 

  1. تفاوت‌های بین فایل‌های py. و pyc. چیست؟

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

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

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

د) این فرمت حدواسط، بایت‌کد نامیده می‌شود.

 

  1. پایتون چگونه تفسیر می‌شود؟

الف) پایتون به عنوان یک زبان، تفسیر یا کامپایل نمی‌شود. تفسیر شدن یا کامپایل شدن، یک خاصیت پیاده‌سازی است. ✅

ب) پایتون به عنوان یک زبان، تفسیر یا کامپایل می‌شود.

ج) پایتون، برای تفسیر اسناد ماژول‌ها، توابع، کلمات کلیدی و … به کار می‌رود.

د) پایتون یک متغیر محیطی است که شما می‌توانید برای اضافه کردن دایرکتور از آن استفاده کنید

 

  1. کمپانی‌های زیر کدام‌یک از فریم‌ورک Django استفاده می‌کنند؟

الف) Instagram و Pinterest ✅

ب) Netflix و MailGun

ج) Netflix و Lyft

د) Lyft و Instagram

 

  1. جملات چند خطی در interactive interpreter با استفاده از چه کاراکتری مشخص می‌شوند:

الف) سه نقطه (…) ✅

ب) (“……”)

ج) ؟؟؟؟

د) (###)

 

  1. کاربرد دستور sqlall چیست؟

الف) در حقیقت جداول پایگاه داده را تولید نمی‌کند و به عبارت دیگر پایگاه داده نیز لمس نمی‌کند، تنها خروجی تولید شده توسط جنگو را به زبان SQL مورد نظر نشان می‌دهد ✅

ب) یک هماهنگی ساده بین مدل‌ها و پایگاه داده می‌باشد

ج) حذف مدل‌ها را با پایگاه داده هماهنگ می‌کند

د) در صورتی که دستور python manage.py syncdb را دوباره اجرا کنید، اتفاقی رخ نخواهد داد

 

  1. خطای DoesNotExist یک attribute از کلاس مدل می‌باشد (Publisher.DoesNotExist). با کدام دستور می‌توانید خطاها را کنترل کنید:

الف) >>> Publisher.objects.get(name=”Penguin”) Traceback (most recent call last):

ب) try: p = Publisher.objects.get(name=’Apress’) except Publisher.DoesNotExist: print “Apress isn’t in the database yet.” else: print “Apress is in the database.” ✅

ج) try: p = Publisher.objects.get(name=’Apress’) except Publisher.DoesNotExist

د) DoesNotExist: Publisher matching query does not exist.

 

  1. برگرداندن چند مقدار از توابع در کدام یک از گزینه‌های زیر است؟

الف) import sys x = 1 print(sys.getsizeof(x))

ب) def x(): return 1, 2, 3, 4 a, b, c, d = x() print(a, b, c, d) ✅

ج) def x(): return 1, 2, 3, 4 a, b, c, d = x() print

د) print(max(set(test), key = test.count))

 

  1. پیدا کردن عنصری که بیشتر از سایر عناصر در یک فهرست تکرار شده است در کدام گزینه است؟

الف) test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4] print(max(set(test), key = test.count)) ✅

ب) import sys x = 1 print(sys.getsizeof(x))

ج) def x(): return 1, 2, 3, 4 a, b, c, d = x()

د) test = [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4] (max(set(test), key = test.count))

 

  1. چاپ رشته‌ای به تعداد N مرتبه نتیجه کدام دستورات زیر است؟

الف) from collections import Counter def is_anagram(str1, str2): return Counter(str1) == Counter(str2)

ب) n = 2 a = “GeeksforGeeks” print(a*n) ✅

ج) from collections import Counter def is_anagram(str1, str2):

د) print(max(set(test), key = test.count))

 

  1. ساخت یک فهرست واحد بدون استفاده از حلقه‌ها در کدام دستور زیر نهفته است؟

الف) import itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain.from_iterable(test))) #-> [-1, -2, 30, 40, 25, 35] ✅

ب) def unifylist(l_input, l_target): for it in l_input:

ج) if isinstance(it, list): unifylist(it, l_target) elif isinstance(it, tuple):

د) import itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain

 

  1. مبدا برای تقلید عملکرد چاپ در کدام گزینه است؟

الف) import sys lprint=lambda *args:sys.stdout.write(” “.join(map(str,args)))

ب) import sys lprint=lambda *args:sys.stdout.write(” “.join(map(str,args))) lprint(“python”, “tips”,1000,1001) #-> python tips 1000 1001 ✅

ج) itertools test = [[-1, -2], [30, 40], [25, 35]] print(list(itertools.chain

د) print(“<http://www.google.com/>”.startswith((“http://”, “https://”)))

 

  1. برنامه تولید کننده اطلاعات ساختگی با پایتون در کدام گزینه است؟

الف) from faker import Faker fake = Faker() print(fake.name()) print(fake.email())

ب) from faker import Faker fake = Faker() print(fake.name()) print(fake.email()) print(fake.country()) print(fake.profile()) ✅

ج) import pywhatkit pywhatkit.text_to_handwriting(”’

د) import pywhatkit pywhatkit.text

 

  1. برنامه خاموش کردن کامپیوتر با پایتون در کدام گزینه نوشته شده است؟

الف) import os if shutdown == ‘yes’: shutdown = input(“Do you want to shutdown your computer (yes / no): “) os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’)

ب) import os shutdown = input(“Do you want to shutdown your computer (yes / no): “) if shutdown == ‘yes’: os.system(“shutdown /s /t 1

ج) import os shutdown = input(“Do you want to shutdown if shutdown == ‘yes’: os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’)

د) import os shutdown = input(“Do you want to shutdown your computer (yes / no): “) if shutdown == ‘yes’: os.system(“shutdown /s /t 1”) else: print(‘Shutdown is not requested’) ✅

 

  1. برنامه رسم نمودار دایره‌ای با پایتون در کدام گزینه است؟

الف) import matplotlib.pyplot as plt Partition = sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show()

ب) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show()

ج) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() ax1.pie(sizes, labels=Partition, autopct=’%1.1f%%’, shadow=True, startangle=90) ax1.axis(‘equal’) plt.show() ✅

د) import matplotlib.pyplot as plt Partition = ‘Holidays’, ‘Eating_Out’, ‘Shopping’, ‘Groceries’ sizes = [250, 100, 300, 200] fig1, ax1 = plt.subplots() is(‘equal’) plt.show()

 

  1. برنامه پنجره هشدار با پایتون در کدام گزینه نوشته شده است؟

الف) import pyautogui num=int(input(“Enter a value to divide 100″)) if num == 0: pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’) ✅

ب) import pyautogui num=int(input(“Enter a value to divide 100″)) pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’)

ج) import pyautogui 100″)) if num == 0: pyautogui.alert(” Alert!!! 100 cannot be divided by 0″) else: print(f’The value is {100/num}’)

د) import pyautogui num=int(input(“Enter a value to divide 100”)) if num == 0: print(f’The value is {100/num}’)

 

  1. یک ماژول را می‌توان با تغییر نام آن، به چه صورت وارد کرد؟

الف) # import module by renaming it print(“The value of pi is”, m.pi)

ب) # import module by renaming it import math as m print(“The value of pi is”, m.pi) ✅

ج) # import module by renaming it import math as m

د) import renaming it import math as m print(“The value of pi is”, m.pi)

 

  1. چگونه می‌توان همه اسامی (تعاریف) را از یک ماژول وارد کرد؟

الف) # import all names from the standard module math from math import *

ب) # import all names from the standard module math print(“The value of pi is”, pi)

ج) # import all names from the standard module math from math import * print(“The value of pi is”, pi) ✅

د) names from the standard module math from math import * print(“The value of pi is”, pi)

 

  1. چگونه همه اسامی تعریف شده در «فضای نام» (Namespace) جاری را می‌توان با استفاده از تابع dir() و بدون هیچ آرگومانی پیدا کرد؟

الف) >>> a = 1 >>> b = “hello” >>> import math >>> dir() [‘__builtins__’, ‘pyscripter’]

ب) >>> a = 1 >>> import math >>> dir() [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’]

ج) >>> a = 1 >>> b = “hello” >>> import math [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’]

د) >>> a = 1 >>> b = “hello” >>> import math >>> dir() [‘__builtins__’, ‘__doc__’, ‘__name__’, ‘a’, ‘b’, ‘math’, ‘pyscripter’] ✅

 

  1. برای ایجاد یک محیط مجازی با استفاده از Virtualenv و نصب جنگو، کدام دستور ترتیب صحیح را رعایت می‌کند؟

الف) virtualenv env && source env/bin/activate && pip install django ✅

ب) source env/bin/activate && pip install django && virtualenv env

ج) pip install django && virtualenv env && source env/bin/activate

د) virtualenv –install django && source env/bin/activate

 

  1. در یک پروژه جنگو، فایل settings.py کدام نقش کلیدی را ایفا می‌کند؟

الف) تنظیمات مربوط به URLها

ب) نگهداری مدل‌های پایگاه داده

ج) مدیریت کلیدهای امنیتی و تنظیمات پایگاه داده ✅

د) تنظیمات مربوط به مدیریت صفحه ادمین

 

  1. برای ایجاد یک پروژه جنگو جدید با نام MyProject، کدام دستور باید استفاده شود؟

الف) django-admin startproject myproject ✅

ب) django-admin.py createproject MyProject

ج) django-admin startproject –name=MyProject

د) python manage.py startproject MyProject

 

  1. در مدل‌های جنگو، استفاده از ForeignKey چه تأثیری بر ساختار پایگاه داده دارد؟

الف) ایجاد یک ارتباط یک به یک

ب) ایجاد یک ارتباط چند به چند

ج) ایجاد یک کلید اولیه جایگزین

د) ایجاد یک ارتباط یک به چند ✅

 

  1. اگر بخواهید یک فیلد تاریخ را با مقدار پیش‌فرض تاریخ و زمان فعلی ایجاد کنید، از کدام گزینه استفاده می‌کنید؟

الف) models.DateField(default=timezone.now)

ب) models.DateTimeField(default=datetime.now)

ج) models.DateTimeField(auto_now_add=True) ✅

د) models.DateField(auto_add_now=True)

 

  1. کدام یک از گزینه‌های زیر هنگام استفاده از مدل‌های جنگو باعث بازدهی بهتر پرس‌وجوها می‌شود؟

الف) استفاده از متد all() به تنهایی

ب) ترکیب متدهای filter() و select_related() ✅

ج) فراخوانی مستقیم داده‌ها از دیتابیس با raw()

د) استفاده از متد values() بدون فراخوانی فیلدهای مرتبط

 

  1. برای تعریف الگوی یک URL که شامل متغیر username باشد و فقط مقادیر الفبایی را قبول کند، کدام گزینه صحیح است؟

الف) path(‘<username>/’, views.profile)

ب) path(‘<str:username>/’, views.profile)

ج) re_path(r’^profile/(?P<username>[a-zA-Z]+)/$’, views.profile) ✅

د) url(r’^profile/(?P<username>\w+)/$’, views.profile)

 

  1. کدام یک از روش‌های زیر بهترین انتخاب برای مدیریت لینک‌های تودرتو (nested links) در جنگو است؟

الف) استفاده از متدهای view با مقادیر سخت‌کد شده

ب) استفاده از الگوهای نام‌گذاری شده (namespace) در URL ✅

ج) تنظیم دستی هر لینک در فایل Template

د) استفاده از آرگومان‌های query string

 

  1. در زبان Template جنگو، برای بررسی شرطی اینکه یک متغیر خالی نیست و مقدار عددی دارد، از کدام روش استفاده می‌کنید؟

الف) {% if variable %}

ب) {% if variable|default:0 %}

ج) {% if variable and variable > 0 %} ✅

د) {% if variable|add:0 > 0 %}

 

  1. کدام یک از دستورات زیر به بهترین نحو می‌تواند محتوا را از قالب فرزند به قالب والد ارسال کند؟

الف) {% include %}

ب) {% extends %}

ج) {% block %} ✅

د) {% super %}

 

  1. برای بهینه‌سازی نمایش یک مدل با تعداد زیادی رکورد در پنل مدیریت جنگو، کدام روش کارآمدتر است؟

الف) استفاده از list_display با تمامی فیلدها

ب) استفاده از list_select_related برای کاهش تعداد پرس‌وجوهای پایگاه داده ✅

ج) افزودن فیلترهای پیش‌فرض در list_filter

د) استفاده از متدهای سفارشی در ModelAdmin

 

  1. در جنگو، چه زمانی استفاده از متد clean() در مدل مناسب است؟

الف) هنگام انجام اعتبارسنجی داده‌ها قبل از ذخیره ✅

ب) برای اعمال تغییرات در داده‌های نمایش داده شده

ج) هنگام ایجاد تنظیمات برای پایگاه داده

د) برای مدیریت ارتباطات بین مدل‌ها

 

  1. اگر بخواهید QuerySet یک مدل را از بزرگ‌ترین مقدار فیلد مرتب کنید، از کدام روش استفاده می‌کنید؟

الف) order_by(‘-field_name’) ✅

ب) filter(field_name__desc=True)

ج) annotate(desc(field_name))

د) sort(field_name, reverse=True)

 

  1. کدام یک از موارد زیر در رابطه با جنگو و پایگاه داده‌های NoSQL صحیح است؟

الف) جنگو به صورت پیش‌فرض فقط از پایگاه داده‌ رابطه‌ای پشتیبانی می‌کند.

ب) جنگو از پایگاه داده‌های NoSQL به کمک موتورهای Third-Party پشتیبانی می‌کند.

ج) استفاده از پایگاه داده NoSQL در جنگو نیازمند تغییرات در معماری مدل‌هاست.

د) تمامی موارد بالا. ✅

 

  1. کدام متد برای هندل کردن خطاهای 404 در جنگو استفاده می‌شود؟

الف) HttpResponseNotFound

ب) PageNotFoundView

ج) django.http.error_404()

د) get_object_or_404() ✅

 

  1. برای اضافه کردن قابلیت آپلود فایل به یک مدل در جنگو، چه تنظیماتی موردنیاز است؟

الف) اضافه کردن FileField به مدل و تنظیم مسیر ذخیره در settings.py ✅

ب) اضافه کردن UploadField به مدل و ایجاد پوشه دستی

ج) استفاده از FileSystemField برای تعریف مسیر ذخیره فایل‌ها

د) هیچ تنظیم خاصی موردنیاز نیست؛ جنگو به صورت پیش‌فرض مدیریت فایل را انجام می‌دهد.

 

  1. چگونه می‌توانید یک View در جنگو ایجاد کنید که فقط از متدهای POST پشتیبانی کند؟

الف) با استفاده از شرط در داخل View

ب) افزودن @require_POST به عنوان Decorator ✅

ج) استفاده از کلاس‌های پایه View مانند PostOnlyView

د) تنظیم methods=[‘POST’] در URL

 

  1. در پنل مدیریت جنگو، چگونه می‌توانید یک فیلد محاسباتی (مانند جمع دو فیلد دیگر) را در لیست نمایش دهید؟

الف) افزودن یک متد به کلاس مدل و استفاده از آن در list_display

ب) استفاده از متغیرهای محاسباتی در settings.py

ج) ایجاد یک متد در ModelAdmin و استفاده از list_display ✅

د) افزودن فیلد مستقیم به دیتابیس و نمایش آن

 

  1. برای ایجاد یک رابطه چند به چند در مدل جنگو با استفاده از یک مدل واسط در چند به چند سفارشی، کدام گزینه مناسب‌تر است؟

الف) تعریف ManyToManyField به همراه پارامتر through ✅

ب) استفاده از ForeignKey در هر دو مدل

ج) ایجاد مدل واسط به صورت دستی بدون تنظیمات خاص

د) هیچ کدام از گزینه‌های بالا

 

  1. در جنگو، کدام یک از موارد زیر برای امنیت بیشتر در ارسال داده‌ها از طریق فرم توصیه می‌شود؟

الف) اعتبارسنجی تمامی فیلدها به صورت دستی

ب) رمزنگاری تمامی داده‌ها در فرم با کلید امنیتی

ج) استفاده از متد POST به جای GET

د) استفاده از CSRF برای جلوگیری از حملات Cross-Site Request Forgery ✅

 

  1. برای ارسال یک آرگومان از View به Template در جنگو، کدام ساختار استفاده می‌شود؟

الف) استفاده از متغیرهای request

ب) استفاده از kwargs در Template

ج) مقداردهی مستقیم در فایل HTML

د) استفاده از متغیرهای context در View ✅

 

  1. در جنگو، چگونه می‌توان محتوای یک قالب (Template) را به صورت شرطی بر اساس سطح دسترسی کاربر نمایش داد؟

الف) مدیریت شرط‌ها در فایل urls.py

ب) اضافه کردن متد is_authenticated در View

ج) استفاده از شرط {% if user.is_authenticated %} در Template ✅

د) استفاده از Decorator در View

 

  1. کدام مورد برای بهینه‌سازی جستجو در یک مدل جنگو استفاده می‌شود؟

الف) استفاده از متد filter() برای فیلترگذاری

ب) افزودن ایندکس به فیلدهای پرکاربرد با استفاده از db_index=True ✅

ج) تعریف unique=True در تمامی فیلدها

د) تبدیل تمامی QuerySetها به داده خام

 

  1. اگر بخواهید پیام‌های هشدار (Flash Messages) را به کاربر نمایش دهید، کدام Framework داخلی جنگو استفاده می‌شود؟

الف) django.contrib.messages ✅

ب) django.middleware.security

ج) django.contrib.admin

د) django.contrib.staticfiles

 

  1. برای استفاده از قالب‌های داینامیک و بازنویسی ساختار HTML در جنگو، از کدام قابلیت استفاده می‌شود؟

الف) شرط‌های {% if %} و {% else %}

ب) بلوک‌های {% block %} و ارث‌بری قالب ✅

ج) توابع سفارشی Template

د) شامل کردن فایل‌های جداگانه

 

  1. در زمان استفاده از کلاس FormView در جنگو، متد form_valid() چه وظیفه‌ای دارد؟

الف) بازنویسی Template مربوط به فرم

ب) اعتبارسنجی داده‌های فرم

ج) مدیریت عملیات پس از تایید داده‌های فرم ✅

د) تعریف نام فیلدهای فرم

 

  1. چگونه می‌توانید یک متد سفارشی را برای عملیات CRUD در View استفاده کنید؟

الف) استفاده از QuerySetهای خام

ب) افزودن متدهای سفارشی به ModelAdmin

ج) بازنویسی متدهای پایه مانند get() یا post() ✅

د) تعریف توابع کمکی در فایل urls.py

 

  1. برای استفاده از یک API خارجی و ارسال درخواست HTTP در جنگو، از چه ابزاری می‌توانید استفاده کنید؟

الف) کتابخانه داخلی requests ✅

ب) متد HttpRequest جنگو

ج) متدهای fetch() جاوااسکریپت

د) استفاده از Session جنگو

 

  1. کدام یک از متدهای جنگو برای ایجاد روابط پیچیده بین مدل‌ها توصیه می‌شود؟

الف) استفاده از مدل‌های انتزاعی (Abstract Models)

ب) استفاده از متد Prefetch در QuerySet

ج) تعریف ManyToManyField با مدل واسط ✅

د) ترکیب ForeignKey و OneToOneField

 

  1. برای اعمال تغییرات در تنظیمات جنگو بر اساس محیط (توسعه، تولید)، بهترین روش چیست؟

الف) استفاده از فایل‌های تنظیمات جداگانه برای هر محیط

ب) تعریف تمامی تنظیمات در settings.py و استفاده از شرط‌ها

ج) ایجاد متغیرهای محیطی (Environment Variables)

د) ترکیب گزینه‌های الف و ج ✅

 

  1. چگونه می‌توان خطاهای عملکرد و خطاهای یک پروژه جنگو را به صورت حرفه‌ای لاگ‌گیری کرد؟

الف) استفاده از پکیج داخلی logging در settings.py ✅

ب) استفاده از فایل‌های متنی برای ذخیره لاگ‌ها

ج) ارسال خطاها به کنسول در زمان توسعه

د) افزودن تابع سفارشی برای مدیریت لاگ‌ها

 

  1. برای ایجاد یک migration جدید در Django از کدام دستور استفاده می‌شود؟

الف) python manage.py migrate

ب) python manage.py makemigrations ✅

ج) python manage.py runserver

د) python manage.py startapp

 

  1. چگونه می‌توانید درخواست‌های Ajax را در یک View مدیریت کنید؟

الف) استفاده از شرط request.is_ajax()

ب) ارسال پاسخ JSON با JsonResponse

ج) تعریف متدهایی با پشتیبانی از GET و POST

د) ترکیب گزینه‌های الف و ب ✅

 

  1. کدام یک از گزینه‌های زیر برای ایجاد یک فرم پویا (Dynamic Form) در جنگو مناسب است؟

الف) استفاده از کلاس پایه ModelForm

ب) بازنویسی متد __init__() برای تغییر فیلدها در زمان اجرا

ج) تعریف یک متغیر formset_factory برای تولید فرم‌های تکراری

د) ترکیب گزینه‌های ب و ج ✅

 

  1. در جنگو، کدام Decorator برای محدود کردن دسترسی به View فقط برای کاربران لاگین کرده استفاده می‌شود؟

الف) @require_user

ب) @login_required ✅

ج) @user_only

د) @authenticate_user

 

  1. برای استفاده از تاریخ شمسی در پنل مدیریت جنگو، کدام ابزار کاربردی‌تر است؟

الف) jdatetime

ب) jalali_date

ج) پکیج‌های Third-Party مانند django-jalali ✅

د) تغییر تنظیمات دستی در فایل settings.py

 

  1. اگر بخواهید یک API RESTful ساده در جنگو ایجاد کنید، کدام ابزار مناسب‌تر است؟

الف) django-rest-framework ✅

ب) کلاس‌های پایه View مانند جنگو

ج) استفاده از raw SQL برای مدیریت درخواست‌ها

د) ابزارهای خارجی مانند Flask

 

  1. برای ارسال ایمیل از طریق جنگو، کدام تنظیمات در فایل settings.py ضروری است؟

الف) SMTP_SERVER, SMTP_PORT, SMTP_USER, SMTP_PASSWORD

ب) MAIL_SERVER, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD

ج) EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER, EMAIL_HOST_PASSWORD ✅

د) تنها EMAIL_BACKEND کافی است

 

  1. کدام تنظیم برای مدیریت فایل‌های استاتیک در محیط تولید مناسب است؟

الف) استفاده از STATICFILES_DIRS در تنظیمات

ب) تعریف مسیر STATIC_ROOT برای جمع‌آوری فایل‌های استاتیک ✅

ج) سرو کردن فایل‌ها از طریق سرور داخلی جنگو

د) تنظیم دستی URL فایل‌های استاتیک در هر Template

 

  1. برای پیاده‌سازی صفحه‌بندی (Pagination) در یک View جنگو، کدام کلاس یا ابزار مناسب‌تر است؟

الف) Paginator ✅

ب) QuerySetPaginator

ج) paginate()

د) استفاده از روش‌های دستی و شرط‌های ساده

 

  1. در جنگو، برای جلوگیری از دسترسی غیرمجاز به یک مدل خاص، کدام رویکرد بهتر است؟

الف) استفاده از محدودیت‌های سطح دیتابیس

ب) افزودن مجوزهای سفارشی (Custom Permissions) به مدل

ج) تعریف Viewهایی با دسترسی محدود

د) استفاده از Decorator @permission_required ✅

 

  1. در Viewهای Class-based جنگو، برای بازنویسی رفتار پیش‌فرض حذف یک شیء، از کدام متد استفاده می‌شود؟

الف) delete()

ب) post()

ج) destroy()

د) remove() ✅

 

  1. برای اتصال یک فرم به یک مدل جنگو، از کدام کلاس استفاده می‌شود؟

الف) Form

ب) ModelForm ✅

ج) FormFactory

د) Formset

 

  1. چگونه می‌توانید از مهاجرت (Migration) برای تغییر ساختار پایگاه داده استفاده کنید؟

الف) اجرای دستور python manage.py makemigrations

ب) استفاده از sqlmigrate برای مشاهده تغییرات

ج) اجرای دستور python manage.py migrate

د) ترکیب گزینه‌های الف و ج ✅

 

  1. برای مدیریت بهتر خطاهای HTTP در جنگو، کدام تنظیم بهینه است؟

الف) استفاده از متد پیش‌فرض جنگو برای مدیریت خطاها

ب) تعریف Viewهای اختصاصی برای کدهای خطا مانند 404 و 500 ✅

ج) تنظیم مستقیم در فایل urls.py

د) تعریف فایل‌های HTML اختصاصی در پوشه templates

 

  1. برای افزایش امنیت رمز عبور کاربران در جنگو، کدام مورد از تنظیمات مناسب‌تر است؟

الف) استفاده از PASSWORD_HASHERS برای الگوریتم‌های هش قوی

ب) استفاده از bcrypt یا argon2

ج) تعریف محدودیت طول رمز عبور و سیاست‌های سخت‌گیرانه

د) تمامی موارد بالا ✅

 

  1. در زمان استفاده از متد annotate() در QuerySet، چه هدفی دنبال می‌شود؟

الف) انجام عملیات CRUD در دیتابیس

ب) فیلترگذاری بر اساس مقادیر خاص

ج) افزودن فیلدهای محاسباتی به نتیجه QuerySet ✅

د) بازنویسی ساختار مدل‌ها

 

  1. برای ایجاد فیلترهای سفارشی در Template جنگو، از کدام ابزار استفاده می‌شود؟

الف) افزودن تابع در فایل views.py

ب) تعریف یک تابع در فایل templatetags ✅

ج) استفاده از فایل settings.py

د) بازنویسی کلاس‌های پایه Template

 

  1. در جنگو، متد get_object_or_404() چه زمانی استفاده می‌شود؟

الف) برای فیلتر کردن نتایج QuerySet

ب) برای اعتبارسنجی داده‌های ارسال شده

ج) برای دریافت یک شیء از پایگاه داده و مدیریت خطای 404 در صورت عدم وجود آن ✅

د) برای ذخیره داده‌ها در پایگاه داده

 

  1. کدام دستور برای اجرای سرور توسعه در جنگو استفاده می‌شود؟

الف) django runserver

ب) python manage.py runserver ✅

ج) python manage.py server

د) django manage.py runserver

 

  1. برای افزودن یک مسیر URL به پروژه جنگو، در کدام فایل باید تغییرات ایجاد کرد؟

الف) models.py

ب) settings.py

ج) views.py

د) urls.py ✅

 

  1. برای تعریف یک رابطه یک به چند بین دو مدل در جنگو، از کدام فیلد استفاده می‌شود؟

الف) OneToOneField

ب) ManyToManyField

ج) ForeignKey ✅

د) CharField

 

  1. کدام دستور برای ایجاد یک Migration جدید در جنگو استفاده می‌شود؟

الف) python manage.py migrate

ب) python manage.py makemigrations ✅

ج) python manage.py create_migration

د) python manage.py apply_migration

 

  1. در جنگو، برای تعریف یک مسیر URL با پارامتر ورودی، کدام ساختار صحیح است؟

الف) path(‘<int:id>/’, view_function) ✅

ب) url(‘<id:int>/’, view_function)

ج) path(‘id<int>/’, view_function)

د) url(‘int:id/’, view_function)

 

  1. برای تعریف یک مدل در جنگو، کدام کلاس پایه استفاده می‌شود؟

الف) django.db.Model

ب) django.models.Model

ج) django.db.models.Model ✅

د) django.core.Model

 

  1. برای استفاده از فایل‌های استاتیک (مانند CSS و JavaScript) در جنگو، کدام دستور ضروری است؟

الف) collectstatic

ب) staticfiles

ج) load static ✅

د) serve static

 

  1. کدام متد برای حذف یک شیء از پایگاه داده در جنگو استفاده می‌شود؟

الف) remove()

ب) delete() ✅

ج) destroy()

د) clear()

 

  1. در جنگو، تنظیم ALLOWED_HOSTS در فایل settings.py چه کاربردی دارد؟

الف) تعیین دامنه‌هایی که مجاز به دسترسی به سرور هستند ✅

ب) تعریف نام سرور در محیط تولید

ج) تنظیم مسیرهای استاتیک

د) تعریف پایگاه داده‌های مجاز

 

  1. برای اجرای یک تابع در زمان ذخیره شیء در مدل جنگو، از کدام متد استفاده می‌شود؟

الف) insert()

ب) store()

ج) commit()

د) save() ✅

 

  1. در جنگو، فایل requirements.txt برای چه استفاده می‌شود؟

الف) تعیین تنظیمات پایگاه داده

ب) تعریف وابستگی‌های پروژه و نصب پکیج‌ها ✅

ج) مدیریت مسیرهای استاتیک

د) تعریف متغیرهای محیطی

 

  1. برای استفاده از QuerySetهای خام در جنگو، کدام متد استفاده می‌شود؟

الف) query()

ب) filter()

ج) raw() ✅

د) execute()

 

  1. در جنگو، برای تعریف یک مسیر ثابت (Static Path) در URL، کدام گزینه صحیح است؟

الف) include(‘home/’, view_function)

ب) url(‘home/’, view_function)

ج) static(‘home/’, view_function)

د) path(‘home/’, view_function) ✅

 

  1. برای اعتبارسنجی فرم در جنگو، کدام متد استفاده می‌شود؟

الف) is_valid() ✅

ب) validate()

ج) check()

د) verify()

 

  1. برای سفارشی‌سازی نام مدل در پنل مدیریت جنگو، از کدام خاصیت استفاده می‌شود؟

الف) model_name

ب) admin_label

ج) verbose_name ✅

د) display_name

 

  1. کدام متد از کلاس‌های View در جنگو برای مدیریت درخواست‌های POST استفاده می‌شود؟

الف) get()

ب) post() ✅

ج) handle_post()

د) request_post()

 

  1. برای ثبت مدل‌ها در پنل مدیریت جنگو، کدام دستور استفاده می‌شود؟

الف) admin.register_model()

ب) admin.site.register() ✅

ج) admin.add_model()

د) admin.site.add()

 

  1. در جنگو، برای غیرفعال کردن قابلیت Auto Increment کلید اصلی (Primary Key) در مدل، چه باید انجام داد؟

الف) تعریف فیلد کلید اصلی به‌صورت دستی ✅

ب) تنظیم خاصیت auto_increment=False

ج) استفاده از فیلد UUIDField

د) تنظیم خاصیت primary_key=False

 

  1. در جنگو، کدام تنظیم برای ذخیره فایل‌های آپلود شده توسط کاربر استفاده می‌شود؟

الف) UPLOAD_ROOT و UPLOAD_URL

ب) STATICFILES_DIRS و STATIC_URL

ج) MEDIA_ROOT و MEDIA_URL ✅

د) FILE_PATH و FILE_URL

 

  1. برای اجرای عملیات مربوط به Sign-In و Sign-Out کاربران، کدام ماژول پیش‌تعریف‌شده در جنگو استفاده می‌شود؟

الف) django.contrib.sessions

ب) django.contrib.auth ✅

ج) django.contrib.admin

د) django.core.auth

 

  1. در جنگو، برای تعریف متغیرهای Context در Viewها، کدام کلاس یا متد استفاده می‌شود؟

الف) Context()

ب) render() ✅

ج) TemplateResponse()

د) HttpResponse()

 

  1. کدام متد از کلاس‌های فرم در جنگو برای پاکسازی داده‌های یک فیلد خاص استفاده می‌شود؟

الف) clean_fieldname() ✅

ب) clean()

ج) validate_fieldname()

د) check_fieldname()

 

  1. برای اجرای درخواست‌های Ajax در جنگو، کدام متد برای تشخیص درخواست‌های Ajax استفاده می‌شود؟

الف) request.is_ajax_call()

ب) request.is_ajax_request()

ج) request.is_ajax() ✅

د) request.is_json()

 

  1. در جنگو، برای ایجاد یک رابطه Many-to-Many بین دو مدل، از کدام فیلد استفاده می‌شود؟

الف) OneToOneField

ب) ForeignKey

ج) ManyToManyField ✅

د) RelationField

 

  1. کدام متد از Viewهای جنگو برای ارسال داده به Template استفاده می‌شود؟

الف) get_context_data() ✅

ب) load_context()

ج) send_context()

د) render_context()

 

  1. برای مدیریت کش در جنگو، کدام تنظیم باید پیکربندی شود؟

الف) CACHE_ROOT

ب) CACHE_BACKEND

ج) CACHE_SETTINGS

د) CACHES ✅

 

  1. در جنگو، برای تولید یک کلید یکتا (UUID) به‌صورت پیش‌فرض در مدل، کدام گزینه صحیح است؟

الف) primary_key=True

ب) default=uuid4 ✅

ج) default=generate_uuid

د) unique=True

 

  1. برای اضافه کردن داده‌های اولیه به مدل‌ها در زمان Migration، از کدام فایل استفاده می‌شود؟

الف) initial_data.json

ب) seed_data

ج) fixtures ✅

د) populate.py

 

  1. در جنگو، برای محدود کردن دسترسی به View فقط برای کاربران دارای یک مجوز خاص، از کدام Decorator استفاده می‌شود؟

الف) @permission_required ✅

ب) @login_required

ج) @require_permission

د) @authenticate

 

  1. کدام ابزار جنگو برای تست Viewها به‌صورت مستقیم از سطح URL استفاده می‌شود؟

الف) django.test.URLTest

ب) django.test.TestCase

ج) django.core.testing

د) django.test.Client ✅

 

  1. برای استفاده از تنظیمات مختلف محیطی (مانند توسعه، تولید و تست) در جنگو، کدام روش مناسب‌تر است؟

الف) استفاده از فایل‌های محیطی مانند .env

ب) تعریف تنظیمات جداگانه و انتخاب آن‌ها با متغیر محیطی

ج) استفاده از settings_module در فایل manage.py

د) تمامی موارد بالا ✅