Menu
CoddyTech

الأعداد الصحيحة والنصفية

جزء من قسم Python في نافذة لعبة في رحلة Pygame على Coddy. الدرس 9 من 32.

لدى Python نوعان من الأعداد. العدد int هو عدد صحيح: 3، -40، 640. أما float ففيه فاصلة عشرية: 0.5، 2.0، 107.25.

بكسل واحد في كل إطار يساوي 60 بكسلًا في الثانية. للتحرك ببطء أكبر، أضف عددًا عشريًا:

moon_x = moon_x + 0.5

الآن تتحرك moon_x بالقيم 100، 100.5، 101.0، 101.5. يرسم pygame عند إحداثيات البكسل الصحيحة، لذا يتحرك القمر بكسلًا واحدًا كل إطارين: انجراف بطيء، بمعدل 30 بكسلًا في الثانية.

جمع عدد صحيح مع عدد عشري يعطي عددًا عشريًا، ويُظهر العدد العشري دائمًا الفاصلة العشرية، مثل 101.0. تحول int() العدد العشري إلى عدد صحيح بحذف ما يأتي بعد الفاصلة:

int(101.5)   # 101
challenge icon

التحدي

متوسط

اجعل القمر يتحرك ببطء:

  1. في جزء التغيير، أضف 0.5 إلى moon_x في كل إطار.
  2. اعرض التسمية كعدد صحيح: f"Moon x: {int(moon_x)}".

جرّب بنفسك

import pygame

pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()

# هيّئ الأشياء هنا، قبل حلقة اللعبة.
moon_x = 100
moon_y = 200
font = pygame.font.Font(None, 36)

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # غيّر الأشياء هنا مرةً في كل إطار.

    screen.fill((20, 24, 48))
    # ارسم هنا بعد ملء الشاشة.
    pygame.draw.circle(screen, (240, 230, 160), (moon_x, moon_y), 50)
    text = font.render(f"Moon x: {moon_x}", True, (230, 230, 240))
    screen.blit(text, (20, 20))

    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Python في نافذة لعبة

تدرّب بنفسك: Playground لـ Pygame