Làm thế nào để bạn tạo một trình giả lập xúc xắc trong python?

Khi bạn muốn thực hiện một tập hợp các thao tác trong Python, trước tiên, bạn nên viết ra các bước cần thiết trong mã giả. Mặc dù mã giả không phải là ngôn ngữ lập trình, nhưng nó tương tự như ngôn ngữ lập trình vì nó giúp bạn phá…

Snake and Ladders, Ludo và Checkers, là những trò chơi được yêu thích nhất mọi thời đại. Nhưng, thật kinh khủng khi bạn bỏ dở kế hoạch chơi chỉ vì không tìm thấy xúc xắc. Vì vậy, đây là một lựa chọn hấp dẫn để mang đến cho bạn cơ hội tạo ra thứ gì đó thú vị. Hãy xây dựng Trình mô phỏng lăn xúc xắc với kiến ​​thức cơ bản về Python

Tkinter là gì?

Python cung cấp nhiều gói khác nhau để thiết kế GUI, tôi. e. giao diện người dùng đồ họa. Tkinter là gói Python phổ biến, nhanh và dễ sử dụng nhất được sử dụng để xây dựng các ứng dụng Giao diện người dùng đồ họa. Nó cung cấp Giao diện hướng đối tượng mạnh mẽ và dễ sử dụng. Ngoài ra, bạn phát triển một ứng dụng;

Trình mô phỏng lăn xúc xắc trong Python

Chúng ta đều biết về xúc xắc. Đó là một khối lập phương đơn giản với các số từ 1 đến 6 được viết trên mặt của nó. Nhưng mô phỏng là gì? . Do đó, trình giả lập xúc xắc là một mô hình máy tính đơn giản có thể gieo xúc xắc cho chúng ta

Chúng tôi mong muốn xây dựng một trình giả lập xúc xắc trông giống như

Tải xuống Mã dự án Dice Rolling Simulator

Trước khi tiếp tục, vui lòng tải xuống mã nguồn của dự án python giả lập xúc xắc. Dự án mô phỏng lăn xúc xắc

Xây dựng mô phỏng lăn xúc xắc

Bước 1. Nhập các mô-đun cần thiết

Chúng tôi sẽ nhập các mô-đun sau

  • tkinter. Đã nhập để sử dụng Tkinter và tạo các ứng dụng GUI
  • Hình ảnh, Imagetk. Được nhập từ PIL, tôi. e. Thư viện hình ảnh Python. Chúng tôi sử dụng nó để thực hiện các hoạt động liên quan đến hình ảnh trong giao diện người dùng của chúng tôi
  • Ngẫu nhiên. Đã nhập để tạo số ngẫu nhiên

Mã số

import tkinter
from PIL import Image, ImageTk
import random

Bước 2. Xây dựng tiện ích cấp cao nhất để tạo cửa sổ chính cho ứng dụng của chúng tôi

Trong bước này, chúng ta sẽ xây dựng cửa sổ chính của ứng dụng, nơi chứa các nút, nhãn và hình ảnh. Chúng tôi cũng đặt cho nó một tiêu đề theo chức năng title[]

Mã số

# top-level widget which represents the main window of an application
root = tkinter.Tk[]
root.geometry['400x400']
root.title['DataFlair Roll the Dice']

Giải trình

Đoạn mã trên đặt tiêu đề của cửa sổ ứng dụng là 'DataFlair Roll the Dice'. Chạy đoạn mã trên sẽ tạo ra một cửa sổ trống của dự án python giả lập lăn xúc xắc với tiêu đề trên đó

Bước 3. Thiết kế các nút

Bây giờ, hãy nghĩ xem, chúng ta cần tung xúc xắc như thế nào?

Đoạn mã dưới đây sẽ thêm nhãn đưa ra tiêu đề cho trình giả lập xúc xắc của chúng tôi. Ngoài ra, chúng tôi sẽ thêm một khu vực hình ảnh, khu vực này sẽ hiển thị hình ảnh được chọn theo số ngẫu nhiên

Mã số

# Adding label into the frame
BlankLine = tkinter.Label[root, text=""]
BlankLine.pack[]

# adding label with different font and formatting
HeadingLabel = tkinter.Label[root, text="Hello from DataFlair!",
   fg = "light green",
     bg = "dark green",
     font = "Helvetica 16 bold italic"]
HeadingLabel.pack[]

# images
dice = ['die1.png', 'die2.png', 'die3.png', 
    'die4.png', 'die5.png', 'die6.png']
# simulating the dice with random numbers between
# 0 to 6 and generating image
DiceImage = ImageTk.PhotoImage[Image.open[random.choice[dice]]]

# construct a label widget for image
ImageLabel = tkinter.Label[root, image=DiceImage]
ImageLabel.image = DiceImage

# packing a widget in the parent widget 
ImageLabel.pack[ expand=True]

Giải trình

Ở đây, chúng ta sử dụng pack[] để sắp xếp các widget theo dạng hàng và cột. Nhãn 'BlankLine' là để bỏ qua một dòng, trong khi chúng tôi sử dụng nhãn 'HeadingLabel' để đưa ra tiêu đề

  • root – tên mà chúng tôi đề cập đến cửa sổ chính của ứng dụng
  • văn bản – văn bản sẽ được hiển thị trong HeadingLabel
  • fg– màu của phông chữ được sử dụng trong HeadingLabel
  • bg – màu nền của HeadingLabel
  • phông chữ – được sử dụng để cung cấp phông chữ tùy chỉnh cho văn bản Nhãn tiêu đề
  • pack[] – Được sử dụng để đóng gói tiện ích vào cửa sổ gốc

Bước 4. Hình thành một danh sách các hình ảnh được hiển thị ngẫu nhiên

Mã số

# images
dice = ['die1.png', 'die2.png', 'die3.png', 'die4.png', 'die5.png', 'die6.png']

# simulating the dice with random numbers between
# 0 to 6 and generating image
DiceImage = ImageTk.PhotoImage[Image.open[random.choice[dice]]]

Giải trình

‘xúc xắc’ là danh sách tên các ảnh được lưu trong cùng một thư mục, được chọn ngẫu nhiên theo số ngẫu nhiên được tạo.
‘DiceImage’ được sử dụng để lưu trữ hình ảnh của con xúc xắc được chọn bởi các số được tạo ngẫu nhiên.

Bước 5. Tạo nhãn cho hình ảnh, thêm nút và gán chức năng

Mã số

# construct a label widget for image
ImageLabel = tkinter.Label[root, image=DiceImage]
ImageLabel.image = DiceImage

# packing a widget in the parent widget 
ImageLabel.pack[ expand=True]

# function activated by button
def rolling_dice[]:
    DiceImage = ImageTk.PhotoImage[Image.open[random.choice[dice]]]
    # update image
    ImageLabel.configure[image=DiceImage]
    # keep a reference
    ImageLabel.image = DiceImage

# adding button, and command will use rolling_dice function
button = tkinter.Button[root, text='Roll the Dice', fg='blue', command=rolling_dice]

# pack a widget in the parent widget
button.pack[ expand=True]

Giải trình

‘ImageLabel’ là đặt một hình ảnh trong cửa sổ. Tham số expands được khai báo là True nên dù chúng ta resize cửa sổ thì hình ảnh vẫn nằm ở giữa

chức năng chính

Chức năng 'rolling_dice' là chức năng được thực thi mỗi khi nhấp vào nút. Điều này đạt được thông qua tham số ‘command=rolling_dice’ trong khi xác định một nút

Bước 6. Hình thành một danh sách các hình ảnh được hiển thị ngẫu nhiên

Mã số

# call the mainloop of Tk
# keeps window open
root.mainloop[]

Giải trình

'nguồn gốc. mainloop[]’ được sử dụng để mở cửa sổ chính. Nó hoạt động như chức năng chính của chương trình của chúng tôi

Dice Rolling Simulator Python Đầu ra

Sự kết luận

vâng. Chúng tôi đã phát triển thành công một ứng dụng thú vị – Trình mô phỏng lăn xúc xắc bằng Python. Bây giờ, bạn có thể chỉ cần nhấp vào một nút và nhận số tiếp theo của mình. Chúc mừng Python và gói 'Tkinter' của nó hỗ trợ các hàm và giúp công việc của chúng ta trở nên dễ dàng. Ai có thể nghĩ rằng chúng ta có thể phát triển một ứng dụng chỉ bằng chức năng 'ngẫu nhiên' của python?

Trình mô phỏng lăn xúc xắc là gì?

Trình mô phỏng tung xúc xắc chẳng qua là một mô hình máy tính có thể được tạo bởi một chương trình phần mềm và nó hoạt động giống như một viên xúc xắc bình thường trong . Có nhiều cách để thực hiện trình mô phỏng xúc xắc.

Có một con xúc xắc kỹ thuật số?

Xúc sắc kỹ thuật số là một loại mạch hiển thị số từ 1 đến 6 một cách ngẫu nhiên . Xúc xắc là một vật nhỏ có thể ném được với nhiều vị trí nghỉ, được sử dụng để tạo số ngẫu nhiên. Điều này làm cho xúc xắc phù hợp làm thiết bị đánh bạc cho các trò chơi như xúc xắc hoặc để sử dụng trong các trò chơi trên bàn và trò chơi trên bàn không mang tính cờ bạc.

Có một ứng dụng để tung xúc xắc?

Chúng tôi cũng đã sử dụng Con lăn xúc xắc D&D nhóm [iOS [mở trong tab mới] / Android [mở trong tab mới] .

Chủ Đề