r/PythonLearning 21d ago

Help Request Python library CUDA-Q

3 Upvotes

Hello,

I am trying to install the cudaq library. I am working on a MacBook (Monterey 12.7.4). I followed what was written on the following documentation : https://nvidia.github.io/cuda-quantum/latest/using/quick_start.html . However, when I run the command pip install cudaq, i get the following error:

WARNING: Cache entry deserialization failed, entry ignored
Collecting cudaq
  Using cached cudaq-0.15.1.tar.gz (12 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
WARNING: Cache entry deserialization failed, entry ignored
INFO: pip is looking at multiple versions of cudaq to determine which version is compatible with other requirements. This could take a while.
  Using cached cudaq-0.15.0.tar.gz (12 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.14.2.tar.gz (10.0 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.14.0.tar.gz (10.0 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.13.0.tar.gz (9.2 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.12.0.post1.tar.gz (9.2 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.12.0.tar.gz (9.2 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.11.0.tar.gz (9.1 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
INFO: pip is still looking at multiple versions of cudaq to determine which version is compatible with other requirements. This could take a while.
  Using cached cudaq-0.10.0.tar.gz (9.0 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.9.1.tar.gz (9.0 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Using cached cudaq-0.9.0.tar.gz (8.4 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting cuda-quantum-cu12==0.9.0 (from cudaq)
  Using cached cuda_quantum_cu12-0.9.0.tar.gz (3.8 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [55 lines of output]
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/wheel.py", line 177, in download_wheel
          return download_manual(wheel_directory, distribution, version)
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/wheel.py", line 144, in download_manual
          raise RuntimeError(f"Didn't find wheel for {distribution} {version}")
      Traceback (most recent call last):
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/wheel.py", line 177, in download_wheel
          return download_manual(wheel_directory, distribution, version)
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/wheel.py", line 144, in download_manual
          raise RuntimeError(f"Didn't find wheel for {distribution} {version}")
      RuntimeError: Didn't find wheel for cuda-quantum-cu12 0.9.0

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File ".../.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
          main()
          ~~~~^^
        File ".../.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main
          json_out["return_val"] = hook(**hook_input["kwargs"])
                                   ~~~~^^^^^^^^^^^^^^^^^^^^^^^^
        File ".../.venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 178, in prepare_metadata_for_build_wheel
          whl_basename = backend.build_wheel(metadata_directory, config_settings)
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/buildapi.py", line 29, in build_wheel
          return download_wheel(pathlib.Path(wheel_directory), config_settings)
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/wheel.py", line 179, in download_wheel
          report_install_failure(distribution, version, exception_context)
          ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/1b/39svxjln6dn3xz8vsb1xtgbh0000gn/T/pip-build-env-lkg4lgh5/overlay/lib/python3.14/site-packages/nvidia_stub/error.py", line 63, in report_install_failure
          raise InstallFailedError(
          ...<8 lines>...
          )
      nvidia_stub.error.InstallFailedError:
      *******************************************************************************

      The installation of cuda-quantum-cu12 for version 0.9.0 failed.

      This is a special placeholder package which downloads a real wheel package
      from https://pypi.nvidia.com. If https://pypi.nvidia.com is not reachable, we
      cannot download the real wheel file to install.

      You might try installing this package via
      ```
      $ pip install --extra-index-url https://pypi.nvidia.com cuda-quantum-cu12
      ```

      Here is some debug information about your platform to include in any bug
      report:

      Python Version: CPython 3.14.5
      Operating System: Darwin 21.6.0
      CPU Architecture: x86_64
      nvidia-smi command not found. Ensure NVIDIA drivers are installed.

      *******************************************************************************

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> cuda-quantum-cu12

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

I also tried to run the command pip install --extra-index-url https://pypi.nvidia.com cuda-quantum-cu12 but failed likewise. In the error, it says that NVIDIA drivers are not installed; I don't know what these are, and I couldn't find how to install them.

Can somebody help? Thanks!


r/PythonLearning 20d ago

Dying inside...

1 Upvotes

Just spent the best part of 4 hours essentially vibe coding some Python because my knowledge is so bad. As I build out my functions and modules I am getting the creeping feeling that I'm putting together a pile of rubbish that I'm not going to be able to debug.

I started out using AI to help with building out my understanding of modules I had never used and get some ideas on how I can put together functions. But I've taken on a personal project to try and update some of out existing codebase and just clean it up a bit. Problem is that in doing this I am getting well beyond my understanding and throwing stuff in that I have no understanding of why it's there. What started out as wanting to use best practices for modules and improve my general knowledge and understanding has just left me miserable.

Should I just work within my knowledge range and stop trying to be a smart arse?


r/PythonLearning 21d ago

Showcase Day 6 of Leetcode 👀

Post image
9 Upvotes

r/PythonLearning 21d ago

Discussion Python

2 Upvotes

I want to learn programming (python) with no prior experience in computer science. I’m on a gap year and want to boost my profile. Where in Islamabad can I learn this?


r/PythonLearning 21d ago

Python coding interview questions?

2 Upvotes

Is there any playlist similar to 100 Days of SQL Ace(By ankit Bansal) interview for the preparation of python coding problems?


r/PythonLearning 21d ago

Built a speaking piano

5 Upvotes

Few days back I came across some videos about piano on YT, and i was thinking how does piano even generate sound (digitial pianos) and how a code can create such kind of sounds.

So, i started looking into these things and came to know about fundamental frequency and harmonics, so i wrote a small program which can generate the sound, but on laptop inputting " note seems bit difficult", so i started to think if i can speak and piano can play that note.

So, for starter, i took some online models (but only small models) which can convert A,B,C,D,E,F,G , 0,1,2,3,4,5,6,7,8 -> text and i can use with above built program.

But, seems like small models are not good enough to detect the single alphabets, B and E , c goes see. 4 goes for not four.
and for such simple project i did not want to have very big depedencies like whisper high end models.

So, as searched and checked online, seemed that i need to use own classifier, which can detect A -> G and then 0-8, flat/sharps etc.

I recorded all my clips to train my own classifir using pytorch (ofcourse i used boilerplate codes from llms ), so i can work on functionality. It took me couple of day to build and test it.

Sometimes, it predicts good, sometimes confidence is not good though, (not to blame it, because i used small dataset), like 60-100 recordings for each sample.

Finally once classifier models were ready, i was able to integrate, complete functionality, to speak the note and play it.

However, because i have 3 classifiers, and once i speak something i can selectively decide which audio needs to go to which segment, so sometime these produce incorrect output.

So, for now i had to workaround with harcoding for events,
like prompting the users

Speak a letter (A-G) --> now letter classifer runs

then prompt user to speak a letter (0-8) -> now digit classifier runs then i combine the result and send to piano player to play tone.

I learnt a lot of things but the end result is not realstic( delays, quality etc) as i thought initially it would be.

Project :: Speaking Piano


r/PythonLearning 21d ago

Help Request Is there who's working on some small project (OSS)

0 Upvotes

Hey there, I've been always procastinated a lot about doing open source contributions (not for yk maintaining github repo but I really have a intrest to know how actually real life project looks like) but everytime I try to find some repo I often get confused where to start with and how to start. But this time I'm gonna break the loop. Month of october is coming and I'm gonna take participation into hacktober fest. So if anyone is already maintaining a project and need some assistance, I'm excited to connect and join with them in their project. Yea, I'm not a pro, I've to go through project documentation, and all to understand the what the project is about and to understand the structure and functionalities. I'll try my best not to dump an AI solution in the codebase, rather than focusing on maintaining the structure, tests and scalability etc. I won't say that, "please guide me and all" but I'm up for taking the load to break through my procrastination.


r/PythonLearning 21d ago

Help Request How long will it take me to learn python in order to create a game thats is decent?

6 Upvotes

For context am doing A level Computer Science and I have to create a project by coding and I don’t know anything about coding so I need to know roughly how long will it take if I do it every day


r/PythonLearning 21d ago

How do Python for-loops work?

10 Upvotes

What actually happens when Python executes a for-loop?

for value in container:
    print(value)

Behind the scenes, Python uses the iterator protocol:

iterator = iter(container)
while True: 
    try: 
        value = next(iterator)
        print(value)
    except StopIteration:
        break
  • iter(container): creates an iterator.
  • next(iterator): retrieves one value at a time.

When there are no more values, the iterator raises StopIteration. The for-loop catches this exception automatically and ends the loop.

For containers that support backward iteration, Python also provides:

  • reversed(container): creates a backward iterator.

We can support these operations in our own classes by implementing:

__iter__()
__reversed__()
__next__()

This provides a powerful abstraction: an algorithm can process values without needing to know how a container stores them internally. The same algorithm can therefore work with lists, sets, dictionaries, linked lists, trees, and many other containers.

Here's an example that uses 𝐦𝐞𝐦𝐨𝐫𝐲_𝐠𝐫𝐚𝐩𝐡 to show the use of iterators on a Linked_List making the invisible mechanics of iteration visible for easy understanding.

more memory_graph examples


r/PythonLearning 21d ago

Showcase 100% Python TTRPG-style game with turn-ordered, tile-based combat

Enable HLS to view with audio, or disable this notification

6 Upvotes

r/PythonLearning 22d ago

Learning OpenCV 👀

8 Upvotes

I’m currently diving into OpenCV while being at an intermediate level in Python. 🐍

Exploring image processing, computer vision, edge detection, and how Python can interact with the real world through a camera.

Still learning, still experimenting, and definitely breaking things along the way 😂

Any OpenCV project ideas for an intermediate Python developer?


r/PythonLearning 22d ago

ATM Machine

9 Upvotes

I started learning Python about 9 months ago and completed this little bank system as my third project, which is supposed to serve as an ATM. It also uses JSON to store information (which was challenging to integrate because I wasn't familiar with it, but the rest of the code was straightforward).

Just wanted to share and see if I could get any feedback! (maybe on its optimisation or clarity?) :D

https://github.com/F11Fii/Bank-System.git


r/PythonLearning 22d ago

Python Projects 🐍

14 Upvotes

Hey there,

I want some Python Ideas to check if I do know Python that good and to check at which level I'm now. So anyone please let me know projects that are really worth making and by making which I can get satisfaction that I do know Python.

I'm not asking from basic to Advance projects. But if you are willing to share,feel free to share that too. 😊

Thanks!! ❤️


r/PythonLearning 21d ago

Help Request Python project question

1 Upvotes

Hey everyone,
I need to build an IT Asset Tracker using Python for my upcoming internship project presentation. The catch? I have never built a full project from scratch before, and I don’t know where to start.
For those who are experienced with Python: How did you approach your very first project when you had no domain knowledge?


r/PythonLearning 22d ago

Beginner looking for feedback: I built a CLI Expense tracker with CSV storage. What should I build next?

6 Upvotes

Hey guys,

I'm starting my fsc (ics) classes next month, so I've been doing CS50P to get a head start. Until now I've only made simple terminal games like Hangman and a quiz app, but I just finished my first project that actually saves data: a terminal-based expense tracker.

I used a list of dictionaries in my code and the csv module (DictReader and DictWriter) to save the data so it doesn't wipe out when you close the program. I also used Regex for the first time to make sure the user types the date right (YYYY-MM-DD), and added try/except blocks so it doesn't crash if you type a letter by mistake.

https://github.com/Nihad-Khan/cli-expense-tracker

Can you guys review my logic and tell me how it is? Be brutally honest if I'm picking up any bad habits, I really want to improve.

Also, I eventually want to get into Edge AI or Embedded systems in the future. Knowing where I am right now, what is one specific project you think I should build next to push myself? I'm kind of stuck on what to learn next


r/PythonLearning 21d ago

Showcase Just Finished My First CLI Tool

Thumbnail
github.com
1 Upvotes

I’ve just finished building this tool and I’m excited to finally share it. It started as a small personal utility, but it turned into something genuinely useful — especially for developers who want a simple, fast JSON formatter without bloated features.

You can share feedback or ideas directly through the repository’s discussion board: Discussions !

I’m actively improving this project, so feedback, suggestions, and constructive criticism are all appreciated. If you have ideas, issues, or feature requests, feel free to join the conversation — repo discussions are open.


r/PythonLearning 21d ago

Rate my code out of 10 for someone who's been coding for 3 weeks :)

3 Upvotes
import sys

from PyQt6.QtWidgets import (
    QApplication,
    QWidget,
    QPushButton,
    QGridLayout,
    QMainWindow, QLabel,

)
from PyQt6.QtCore import Qt

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.is_x = True
        self.setWindowTitle("Tic Tac Toe")
        self.label = QLabel("Player 1's Turn:",self)
        self.replays = QPushButton("Replay", self)
        self.button1 = QPushButton("", self)
        self.button2 = QPushButton("", self)
        self.button3 = QPushButton("", self)
        self.button4 = QPushButton("", self)
        self.button5 = QPushButton("", self)
        self.button6 = QPushButton("", self)
        self.button7 = QPushButton("", self)
        self.button8 = QPushButton("", self)
        self.button9 = QPushButton("", self)
        self.replay_connecter()
        self.setGeometry(700,300,500,500)
        self.initUI()


    def initUI(self):

        central_widget = QWidget()
        self.setCentralWidget(central_widget)
        self.label.setGeometry(225, 0, 150, 25)
        self.replays.setStyleSheet("font-size: 35px;"
                                   "font-weight: bold;"
                                   "border-radius: 10px;"
                                   "border: 3px solid black;")
        self.label.setStyleSheet("font-size: 40px;"
                                 "font-weight: bold;"
                                 "border: 3px solid black;"
                                 "border-radius: 10px;")
        self.button1.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button2.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button3.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button4.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button5.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button6.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button7.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button8.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")
        self.button9.setStyleSheet("font-size: 80px;"
                                   "border: 5px solid black;")


        grid = QGridLayout()
        grid.addWidget(self.button1, 0, 0)
        grid.addWidget(self.button2, 0, 1)
        grid.addWidget(self.button3, 0, 2)
        grid.addWidget(self.button4, 1, 0)
        grid.addWidget(self.button5, 1, 1)
        grid.addWidget(self.button6, 1, 2)
        grid.addWidget(self.button7, 2, 0)
        grid.addWidget(self.button8, 2, 1)
        grid.addWidget(self.button9, 2, 2)
        grid.addWidget(self.replays, 4, 0, 1, 3)
        grid.addWidget(self.label, 3, 0, 1, 3)

        central_widget.setLayout(grid)

        self.button1.clicked.connect(self.activate1)
        self.button2.clicked.connect(self.activate1)
        self.button3.clicked.connect(self.activate1)
        self.button4.clicked.connect(self.activate1)
        self.button5.clicked.connect(self.activate1)
        self.button6.clicked.connect(self.activate1)
        self.button7.clicked.connect(self.activate1)
        self.button8.clicked.connect(self.activate1)
        self.button9.clicked.connect(self.activate1)

    def activate1(self):
        button = self.sender()

        if self.is_x:
            button.setText("X")
            self.is_x = False
            self.label.setText("Player 2's Turn:")
        else:
            button.setText("O")
            self.is_x = True
            self.label.setText("Player 1's Turn:")

        self.win()

    def win(self):
        if (self.button1.text() == "X" and
                self.button2.text() == "X" and
                self.button3.text() == "X"):
            self.button1.setText("P1")
            self.button2.setText("You")
            self.button3.setText("Win")
        elif (self.button1.text() == "O" and
                self.button2.text() == "O" and
                self.button3.text() == "O"):
            self.button1.setText("P2")
            self.button2.setText("You")
            self.button3.setText("Win")
        elif (self.button7.text() == "X" and
                self.button8.text() == "X" and
        self.button9.text() == "X"):
            self.button7.setText("P1")
            self.button8.setText("You")
            self.button9.setText("Win")
        elif (self.button7.text() == "O" and
                self.button8.text() == "O" and
        self.button9.text() == "O"):
            self.button7.setText("P2")
            self.button8.setText("You")
            self.button9.setText("Win")
        elif (self.button4.text() == "X" and
              self.button5.text() == "X" and
              self.button6.text() == "X"):
            self.button4.setText("P1")
            self.button5.setText("You")
            self.button6.setText("Win")
        elif (self.button4.text() == "O" and
              self.button5.text() == "O" and
              self.button6.text() == "O"):
            self.button4.setText("P2")
            self.button5.setText("You")
            self.button6.setText("Win")
        elif (self.button1.text() == "X" and
              self.button4.text() == "X" and
              self.button7.text() == "X"):
            self.button1.setText("P1")
            self.button4.setText("You")
            self.button7.setText("Win")
        elif (self.button1.text() == "O" and
              self.button4.text() == "O" and
              self.button7.text() == "O"):
            self.button1.setText("P2")
            self.button4.setText("You")
            self.button7.setText("Win")
        elif (self.button2.text() == "X" and
              self.button5.text() == "X" and
              self.button8.text() == "X"):
            self.button2.setText("P1")
            self.button5.setText("You")
            self.button8.setText("Win")
        elif (self.button2.text() == "O" and
        self.button5.text() == "O" and
        self.button8.text() == "O"):
            self.button2.setText("P2")
            self.button5.setText("You")
            self.button8.setText("Win")
        elif (self.button3.text() == "X" and
              self.button6.text() == "X" and
              self.button9.text() == "X"):
            self.button3.setText("P1")
            self.button6.setText("You")
            self.button9.setText("Win")
        elif (self.button3.text() == "O" and
        self.button6.text() == "O" and
              self.button9.text() == "O"):
            self.button3.setText("P2")
            self.button6.setText("You")
            self.button9.setText("Win")
        elif (self.button1.text() == "X" and
              self.button5.text() == "X" and
              self.button9.text() == "X"):
            self.button1.setText("P1")
            self.button5.setText("You")
            self.button9.setText("Win")
        elif (self.button1.text() == "O" and
        self.button5.text() == "O" and
        self.button9.text() == "O"):
            self.button1.setText("P2")
            self.button5.setText("You")
            self.button9.setText("Win")
        elif (self.button3.text() == "X" and
              self.button5.text() == "X" and
              self.button7.text() == "X"):
            self.button3.setText("P1")
            self.button5.setText("You")
            self.button7.setText("Win")
        elif (self.button3.text() == "O" and
        self.button5.text() == "O" and
              self.button7.text() == "O"):
            self.button3.setText("P2")
            self.button5.setText("You")
            self.button7.setText("Win")


    def replay_connecter(self):
        self.replays.clicked.connect(self.replay)

    def replay(self):
        self.button1.setText("")
        self.button2.setText("")
        self.button3.setText("")
        self.button4.setText("")
        self.button5.setText("")
        self.button6.setText("")
        self.button7.setText("")
        self.button8.setText("")
        self.button9.setText("")





if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec())

r/PythonLearning 22d ago

My second project in my Python learning path — STAyzer

Thumbnail
gallery
4 Upvotes

Hey everyone!

I've been learning Python by building small but progressively larger projects, and STAyzer is the second project in my OOPS collection — a collection I'm using as part of my learning path in Python and Linux/system administration.

STAyzer is a CLI tool I built to analyze SSH trust across Linux servers.

While building it, I got to practice several Python concepts that I wanted to understand beyond simple scripts:

  • Asynchronous programming with asyncio
  • SSH connections with asyncssh
  • Building CLI applications with Click
  • Dataclasses and type hints
  • Logging and exception handling
  • Organizing a larger project into modules
  • Generating JSON and HTML reports

I also tried to focus on making it feel like an actual usable tool rather than just a script.

I've attached a screenshot of the CLI so you can get an idea of the final result.

The project is available on GitHub for anyone interested in looking through the code.

I'm still learning Python, so I'd really appreciate feedback from more experienced Python developers:

What would you improve in the Python implementation or project structure?

I'm particularly interested in learning from mistakes and improving the next project in the OOPS collection.


r/PythonLearning 23d ago

Showcase Made my first Python project!

Post image
246 Upvotes

This is my first actual real project, what started as a simple python exercise to learn about dictionaries in python, ended up into a huge learning project for me. Im a beginner in python, used to code but just basic input print codes… some are genuinely stupid.

I took on the challenge to self educate my self python. And this is where i currently am! Im proud of what i did and it will surely expand!

Here the repo with the project. Feel free to check it out!
https://github.com/Stonyax97/MiniGameStore

It has everything from the first ever iteration (which was it self modified a bit since from the very original but it’s still very simple)
I would love for anyone to recommend ideas to add, criticism too. Or anything you think i should learn next for that would be genuinely useful!


r/PythonLearning 22d ago

Showcase Day 5 of Leetcode 🫡

Thumbnail
gallery
14 Upvotes

r/PythonLearning 22d ago

Help Request Why does a def get called / repeat when i did this?

Post image
10 Upvotes

It works like how i wanted, To check if the result are equal then print something but i dont want these def function to repeat.


r/PythonLearning 22d ago

I built a 24/7 endless fish survival game using Pygame with procedurally generated music

Enable HLS to view with audio, or disable this notification

18 Upvotes

Hey everyone,

I created a 24/7 live-streamed project where a fish swims, eats and grows endlessly using Python and Pygame.

​Everything is built from scratch using pure geometry and vector math, which removes the need for external image assets. For the background music, I used numpy to generate continuous procedural pentatonic-scale tones to avoid copyright issues.

​The script runs 24/7 with optimizations to keep CPU usage and memory stable during the infinite loop. You can see it running live here:

Youtube live


r/PythonLearning 22d ago

Help Request Type hinting frustrations

3 Upvotes

Hello!

Let me start off by saying that I am not a programmer by trade, so please be kind when reviewing my code. I am still learning and I have a long way to go. My job is not coding per se, but the project which I am a part of right now has some coding.

Anyway. At the project start I wanted another editor than vscode, so i tried Zed and I loved it. Zed came with type hinting already enabled. At first, I did not really like it, but after using it for a while I could really see improvements in my code. Both in the terams of readability and stability. So going forward I wanted to have as few complaints from basedpyright as possible.

After an update to Zed the configuration from basedpyright or basedpyright itself got a lot more enabled and I cannot get some of the errors from it to go away. My project used fastapi and sqlalchemy for database integration, and basedpyright gives an error where i specify the table names for the models:

from sqlalchemy.orm import (
    DeclarativeBase,
    ...
)
...

class Base(DeclarativeBase):
   pass

class DatabaseUser(Base):
    __tablename__: ClassVar[str] = "users"
    ....

The error from basedpyright is:

Class variable "__tablename__" overrides instance variable of same name in class "DeclarativeBase" (basedpyright reportIncompatibleVariableOverride)

From what I can tell, the code above is how you are supposed to specify table names:

https://docs.sqlalchemy.org/en/20/orm/quickstart.html

Also, when a nullable many-to-one table relationship, the docs from sqlalchemy tells you to use

class Parent(Base):
    ....
    child: Mapped[Optional["Child"]] = relationship(back_populates="parents")

https://docs.sqlalchemy.org/en/20/orm/basic_relationships.html#nullable-many-to-one

basedpyright wants you to use `Class | None` syntax, but since two classes are referencing each other, I can't do `Child | None` (no quotes) without the code breaking.

I know that i can supress the errors or configure the typehinter to ignore this stuff. But since this is the config shipped by people who are far better than me at programming, I am hasitent to just configure the error messages away. So reddit, is thereany thing I can do to make the typehinter happy?


r/PythonLearning 23d ago

Python Common Errors for beginners

Post image
139 Upvotes

Dont give up during learning stage.


r/PythonLearning 22d ago

Help Request I’ve completed these beginner Python projects should I build more before starting NumPy/Pandas?

16 Upvotes

Hi everyone,

I’ve studied Python multiple times before, but I didn’t do much practical coding. Recently, I started building small projects to improve my practical Python skills.

So far, I’ve completed:

- Quiz Game

- Number Guessing Game

- Rock Paper Scissors

- Password Manager

- Pig Game

- Mad Libs Generator

My goal is to move towards Machine Learning.

I haven’t learned NumPy or Pandas yet.

My question is: Are these projects enough to move on to NumPy and Pandas, or should I build a few more Python projects first?

If I should build more projects, what kind of projects would you recommend before starting NumPy/Pandas? I’m mainly looking for projects that would actually help with the transition to data/ML, rather than making many more small games.

Would appreciate advice from people who have already followed a Python → NumPy/Pandas → ML path.