Can python make games?
Yes, but not suitable.
Can you build a car with a hammer? No one can say it’s impossible, right? There are also many cars on earth that are made with hammers. . But generally speaking, it is more appropriate to use industrial robots, right?

#There are two relatively large games that use Python, one is "EVE" and the other is "Civilization". But this is just an example and has no broad significance.
Generally speaking, there are two types of languages used to make games. One is C. One is C#. (Recommended learning: Python video tutorial)
In theory, Python is not only not suitable for games, but also for large-scale programs. It is only suitable for writing relatively small things, such as a calculator, a small crawler, etc.
There are two main aspects, one is slow speed, and the other is grammatical defects.
Perhaps you must think that Python’s syntax is clean and elegant, so why is it still flawed? But think about it carefully, why are other languages not so clean? Not so elegant? Why do we have to write int a=123; when we can directly write a=123? Could it be that designers of other languages have obsessive-compulsive disorder? The reason is simple, there are gains and there are losses.
If the data type is only strings and numbers, omitting the process of declaring variables is certainly not a problem. But as soon as the logic becomes complicated, the situation becomes completely different. . . In the game, if you write it in C# or C, it will probably look like this.
技能 a=xxxx; 武器 b=xxxx; 角色 c=xxxx; 药水 d=xxxx; 音乐 e=xxxx;
And what about Python? It probably looks like this
a=xxxx b=xxxx c=xxxx d=xxxx
If you have very little code, Python is obviously more convenient. But if you create hundreds of objects, the code exceeds 10,000 lines. . . When you have written thousands of lines, you encounter an object called x. Do you still know what it is? Is it a weapon? Or a bottle of potion? Or a picture? An audio clip? A light? A house?
Don’t think that 10,000 lines of code is a lot. . . . Even "Fighting Landlords" cannot be finished with 10,000 lines. .
The feeling of writing a large program in Python is that on your first day, you only wrote 50 lines of code and created 3 classes and 5 objects. You will feel so happy, this is definitely the best language in the world. . . The next day, when you created 2 more classes and 5 objects, you felt a little dizzy. On the third day, after creating 2 more classes, you will feel completely confused. On the fourth day, you can't understand your code at all.
This is the disadvantage of dynamic languages. At the beginning, the amount of code was small, and I couldn’t see any shortcomings. It was all kinds of trouble-free and all kinds of fun. The more code there is, the more confusing the mind becomes. Generally, if there are more than 500 lines, the efficiency will be surpassed by languages such as JAVA and C#. . With 1,000 lines, you have to add various comments to understand it. . 2000 lines, there are more comments than code. . 5,000 lines of comments are not very useful at first. I can’t understand my own code, so I need to prepare to give up.
For more Python-related technical articles, please visit the Python Tutorial column to learn!
The above is the detailed content of Can python make games?. For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undress AI Tool
Undress images for free
Undresser.AI Undress
AI-powered app for creating realistic nude photos
AI Clothes Remover
Online AI tool for removing clothes from photos.
Clothoff.io
AI clothes remover
Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!
Hot Article
Hot Tools
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
What are class methods in Python
Aug 21, 2025 am 04:12 AM
ClassmethodsinPythonareboundtotheclassandnottoinstances,allowingthemtobecalledwithoutcreatinganobject.1.Theyaredefinedusingthe@classmethoddecoratorandtakeclsasthefirstparameter,referringtotheclassitself.2.Theycanaccessclassvariablesandarecommonlyused
python asyncio queue example
Aug 21, 2025 am 02:13 AM
asyncio.Queue is a queue tool for secure communication between asynchronous tasks. 1. The producer adds data through awaitqueue.put(item), and the consumer uses awaitqueue.get() to obtain data; 2. For each item you process, you need to call queue.task_done() to wait for queue.join() to complete all tasks; 3. Use None as the end signal to notify the consumer to stop; 4. When multiple consumers, multiple end signals need to be sent or all tasks have been processed before canceling the task; 5. The queue supports setting maxsize limit capacity, put and get operations automatically suspend and do not block the event loop, and the program finally passes Canc
How to run a Python script and see the output in a separate panel in Sublime Text?
Aug 17, 2025 am 06:06 AM
ToseePythonoutputinaseparatepanelinSublimeText,usethebuilt-inbuildsystembysavingyourfilewitha.pyextensionandpressingCtrl B(orCmd B).2.EnsurethecorrectbuildsystemisselectedbygoingtoTools→BuildSystem→Pythonandconfirming"Python"ischecked.3.Ifn
How to use regular expressions with the re module in Python?
Aug 22, 2025 am 07:07 AM
Regular expressions are implemented in Python through the re module for searching, matching and manipulating strings. 1. Use re.search() to find the first match in the entire string, re.match() only matches at the beginning of the string; 2. Use brackets() to capture the matching subgroups, which can be named to improve readability; 3. re.findall() returns all non-overlapping matches, and re.finditer() returns the iterator of the matching object; 4. re.sub() replaces the matching text and supports dynamic function replacement; 5. Common patterns include \d, \w, \s, etc., you can use re.IGNORECASE, re.MULTILINE, re.DOTALL, re
How to build and run Python in Sublime Text?
Aug 22, 2025 pm 03:37 PM
EnsurePythonisinstalledbyrunningpython--versionorpython3--versionintheterminal;ifnotinstalled,downloadfrompython.organdaddtoPATH.2.InSublimeText,gotoTools>BuildSystem>NewBuildSystem,replacecontentwith{"cmd":["python","-
How to use variables and data types in Python
Aug 20, 2025 am 02:07 AM
VariablesinPythonarecreatedbyassigningavalueusingthe=operator,anddatatypessuchasint,float,str,bool,andNoneTypedefinethekindofdatabeingstored,withPythonbeingdynamicallytypedsotypecheckingoccursatruntimeusingtype(),andwhilevariablescanbereassignedtodif
How to pass command-line arguments to a script in Python
Aug 20, 2025 pm 01:50 PM
Usesys.argvforsimpleargumentaccess,whereargumentsaremanuallyhandledandnoautomaticvalidationorhelpisprovided.2.Useargparseforrobustinterfaces,asitsupportsautomatichelp,typechecking,optionalarguments,anddefaultvalues.3.argparseisrecommendedforcomplexsc
How to debug a remote Python application in VSCode
Aug 30, 2025 am 06:17 AM
To debug a remote Python application, you need to use debugpy and configure port forwarding and path mapping: First, install debugpy on the remote machine and modify the code to listen to port 5678, forward the remote port to the local area through the SSH tunnel, then configure "AttachtoRemotePython" in VSCode's launch.json and correctly set the localRoot and remoteRoot path mappings. Finally, start the application and connect to the debugger to realize remote breakpoint debugging, variable checking and code stepping. The entire process depends on debugpy, secure port forwarding and precise path matching.


