Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım.

Overview

PythonGiller

Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım. Ne zamandır çalışacağım çalışacağım derken en sonunda kapağını açmayı başardım. Repo'daki amacım kitaptaki örnek programları her zaman olduğu gibi copy-paste yapmadan, biraz değiştirerek ama daha da önemlisi anlamaya çalışıp gerekli yorum satırlarını da ekleyerek çalışmak. İç motivasyonla yeni bir oyun alanı oluşturduğum için mutluyum. Örnekleri Windows 10 yüklü bir sistemde Visual Studio Code editörünü kullanarak yapmaktayım. Sistemde python yüklü tabii ki :)

Sayı Tahmin Oyunu (Bagels)

Game01_Bagles/bilbakalim.py

Oyun 3 basamaklı bir sayıyı tahmin etmemizi istiyor. Belli sayıda deneme hakkımız var (Örneğin 10). Matematiksel olarak tümdengelim yaklaşımı baz alınıyor. Şöyle ki,

  • Tahmin ettiğimiz sayının herhangi bir rakamı/rakamları doğru ama yanlış basamaktaysa Elma
  • Tahmin ettiğimiz sayının herhangi bir rakamı/rakamları doğru ve doğru basamaktaysa Armut
  • Tahmin ettiğimiz sayı tamamen farklıysa yoksa Mısır yani karavana
  • Deneme hakkımızda 10 olsun.

Oyunun çalışma zamanı çıktısı kendi sistemimde aşağıdakine benzer oldu.

./assets/game01.png

./assets/game01_2.png

Öğrenilenler

  • main fonksiyonu program giriş noktası olarak kullanılabilir.
  • Python kod bloklarını ayrıt etmek için girintili (indentation) sözdizimi formatını kullanır.
  • else if bloğu elif şeklinde yazılır.
  • print fonksiyonunda placeholder kullanıldığında format metot çağrısı ile değerleri verilebilir.
  • Terminal girdilerini input metodu ile alabiliriz.
  • Döngü türlerinden birisi while ifadesi dir ve koşul sağlandığı sürece çalışır.
  • Bir diğer döngü şekli de for kullanımıdır.
  • Döngü bloğundan çıkmak için break kullanılabilir.
  • Kodda kullanılan yardımcı modüller import ile başlangıçta belirtilir.
  • Bir metin katarının karakterlerine [] indis operatörü ile erişebiliriz.
  • Metin katarı içeriğini karakter bazında karıştırmak için random modülünün shuffle metodu kullanılabilir.
  • Değişkenler isimleri ve değer atamaları ile tanımlanabilir. Tür belirtmeye gerek yoktur.

Çift mi? Tek mi? (Cho-Han)

Game02_ChoHan/tekcift.py

Oyun feodal Japonya'da geçen bir zar oyunu. Cho çift, Han ise tek anlamında. Oyuna katılan oyuncular bir bardak içinde sallanıp masaya atılan iki zarın rakamlar toplamının tek mi çift mi olduğunu tahmin etmeye çalışırlar. Zarları bambu ağaçtan yapılma bir bardakta krupiye sallar ve ortaya doğru gönderir. Göndermeden önce oyuncular tahminlerini yaparlar. Üstelik bu tahminlerini yaparken masaya bir miktar para da yatırırlar. Sonrası malum.

Şimdi biraz düşünelim...Bilgisayar, kurpiyer görevini üstlenecek. Oyuncu başlangıçta kasaya (mutfak diyelim) belli miktar suşi yatırmak durumunda. Sahip olduğu suşilerin onun kendi tabağında olduğunu düşünelim. Oyuncu Tek veya çift diye bir tahminde bulunacak. Sonrasında bilgisayarın atacağı zarlar 1 ile 6 arasında rastgele iki sayı üretecek. Toplamına göre oyuncu suşi kazanacak ya da kaybedecek. Oyun, oyuncunun suşileri bitene ya da sayanora yazana kadar devam edecek.

Oyunda terminali biraz şenlendirmek adına termcolor isimli harici bir pakette kullandım

pip install termcolor

Oyunun çalışma zamanı çıktısına ait bir görüntü.

./assets/game02.png

Öğrenilenler

  • Uygulamadan çıkmak için sys modülünün exit fonksiyonu kullanılabilir.
  • key:value notasyonu ile Dictionary koleksiyonları tanımlanabilir.
  • Dictionary deki bir çiftin değerine ulaşmak için [key] index notasyonundan yararlanılır.
  • Bir değerin sayısal olup olmadığını kontrol etmek için isdecimal fonksiyonu kullanılabilir.
  • rastgele tamsayı üretmek için random nesnesinin randint fonksiyonundan yararlanılır. Fonksiyona değer aralığı verilebilir.
  • // operatörü ile bölme işlemi sonucu sola doğru yuvarlanır.
  • Harici bir pip modülünü yüklemek için pip install modüladı komutu kullanılabilir.
  • Harici bir pakete başvurmadan \a komutunu kullanarak beep sesi çıkartabiliriz.

Havuç Hangi Kutuda (Carrot in a Box)

Game03_CarrotInABox/havucnerede.py

İki arkadaşın yan yana oynayabileceği bu enteresan oyunda terminal ekranında ASCII karakterleri ile çizilen iki kutu yer alıyor. Farklı renkteki bu kutuların birisinde havuç oluyor ve doğal olarak kutuların açık ve kapalı hallerinin de ASCII karakterleri ile çizilmesi gerekiyor :) Oyunda karşılıklı güven söz konusu olduğu kadar temelde blöf yapma ilkesi de yer alıyor. Nitekim oyunculardan birisi gözünü kapatırken bilgisayar diğer oyuncuya kutuları gösteriyor. Ardından gözleri kapalı olan oyuncu diğer oyuncunun kutusunda havuç olup olmadığını bilmeye çalışıyor. He hee :D Eğlenceli bir pratik olacağa benziyor.

Oyunun çalışma zamanından bazı görüntüler.

./assets/game03_1.png

./assets/game03_2.png

./assets/game03_3.png

./assets/game03_4.png

Öğrenilenler

  • Atamalarda birden eşitliğin sağ tarafındaki birden fazla değişken sol tarafta aynı sayıdaki değişkene atanabilir.
  • ''' stilinde yazılan metinlerde {} için değişken adları yardımıyla aynı parametrenin birden fazla yerde kullanılması sağlanabilir.
  • Main veya herhangi bir başka fonksiyonu bulunmayan python dosyaları betik olarak yukarıdan aşağıya işletilir.

ASCII Kalp (Bitmap Message)

Game04_AsciiHearth/kalpben.py

Bu sefer bilgisayar oyuncudan 5 harfli bir kelime girmesini ve renk seçmesini istiyor. Sonra kendi sisteminde kayıtlı olan kalp metnini kullanarak ona bir çıktı üretiyor. Kitapta dünya haritası kullanılmıştı ben kalp seçtim ama başka alternatifler de kullanılabilir.

Oyunun çalışma zamanından bir görüntü. Kalp yerine örnek bir text dosyadan farklı resimler okutup daha çok seçenek sunabiliriz de ;)

./assets/game04_1.png

./assets/game04_3.png

Aşağıdaki çıktı için şu adrese gidip ilgili emoji'leri copy paste ile terminal ekranına yanyana koymak gerekiyor. Hatta bu emojileri kodda bir koleksiyonda saklayıp rastgele beşini bir araya getirip de oyuncu için rastgele sembollerden oluşan bir kalp resmi de çizdirebiliriz.

./assets/game04_2.png

Öğrenilenler

  • Bir metin içeriğini splitlines ile satırlara bölüp okuyabiliriz.
  • enumarates ile bir metin katarındaki içeriği indeks:karakter ikilisi olarak elde edebiliriz.
  • eleman not in dizi notasyonu ile bir değerin, bir dizi içinde olup olmadığını kontrol edebiliriz.

Conway’in Hayat Oyunu (Conway's Game of Life)

Game05_GameOfLife/hayatoyunu.py

Kitaptan seçtiğim sıradaki bölüm ne yazık ki 2020 yılında Covid-19 yüzünden aramızdan ayrılan İngiliz matematikçi John Horton Conway'ın hayat oyunu. Bu oyun hücresel bir otomat oyunu olup sadece matematik değil biyoloji, fizik ve daha birçok disiplinde ele alınmaktadır. Hayatın temel özelliklerini model alan sonsuza dek yaşabilen bir oyundur. Oyunda siyah veya beyaz kutular söz konusudur. Siyah kutular canlıları, varlıkları veya örneğin bakterileri temsil edebilir. Diğer yandan beyaz kutular yokluk, boşluk ya da ölü olma halini ifade eder. Oyunun kuralları şöyledir.

  • İki veya üç komşusu olan canlı hücreler simülasyonun bir sonraki adımında canlı kalırlar. Yani yaşamaya devam eder.
  • Tam olarak üç komşusu olan ölü hücreler simülasyonun bir sonraki adımında canlanırlar. Doğum diyebiliriz.
  • Yukarıdaki koşullar dışında kalan hücreler ya ölürler ya da ölü kalırlar. Söz gelimi üçten fazla komşusu olan canlı hücreler aşırı kalabalıktan dolayı, ikiden az komşusu olanlar da yalnızlıktan dolayı ölürler.

Matematiksel açıdan baktığımızda oyuncusu olmayan ve ilerleyen süreçteki simülasyonların akibetnin de oyun başlarkenki dağılıma göre şekillendiği ve fakat sonunun nereye varacağını tahmin edemediğimiz bir oyun bu :)

İşte yakaladığım birkaç görüntü.

./assets/game05_1.png

./assets/game05_2.png

./assets/game05_3.png

Öğrenilenler

  • Bir metottan birden fazla değişken döndürebiliriz.
  • Dictionary koleksiyonu deepCopy ile kopyalayabiliriz.
  • Bir Dictionary koleksiyonunun elemanlarını (x,y) gibi tuple türü şeklinde oluşturabiliriz.
  • Bir try bloğunda kullanıcının klavyeden verdiği tepkiyi bekleyip akışı değiştirebiliriz.
  • Koşullu ifadelerde ve/veya için and/or anahtar kelimelerini kullanırız.
  • Sabitleri büyük harf ve snake case tanımlarız.
  • O anki thread'i sleep fonksiyonu ile belli bir süre bekletmeye alabiliriz.

1337 veya hax0r (LeetSpeak)

Game06_LeetSpeak/sifreliyazi.py

Kitaptan seçtiğim sıradaki terminal oyunu internetin BBS'ler aracılığıyla popülerleşmeye başladığı yıllarda kullanılan harf değiştirme tekniğine ait. O vakitler buna Leet (eleet, LeetSpeak olarak da bilinir) adını vermişler. Ya da bilinen karşılığı ile 1337 ve hatta hax0r. Metinsel ifadedeki alfabetik karakterlerin yansımalarına bakılarak sayı veya başka sembollere çevrilmesine dayalı eğlenceli bir sistemden bahsediyoruz. Örneğin leetspeak ifadesi L3375P34 şeklinde yazılıyor.

Oyundan bir görüntü.

./assets/game06_1.png

Öğrenilenler

  • Sistemde yüklü olup olmadığını bilmediğimiz bir import işleminde try bloğu kullanabiliriz.
  • try bloğunda oluşacak bir istisna durumunu pass ile görmezden gelip kod akışının devam etmesini sağlayabiliriz.
  • pyperclip.copy metodu ile bir içeriği sistem panosuna kopyalayabiliriz.
  • Bir metin katarındaki karakterleri for döngüsü ile dolaşmamız mümkündür.
  • random.choise fonksiyon ile parametre olarak gelen dilimden herhangi birisinin alınmasını sağlayabiliriz.
  • 0 ve 1 arasında üretilen rastgele bir sayıyı yüzdesel olarak olasılık hesabına katabiliriz.

Hayaletler Peşimde (Hungry Robots)

Game07_HungryRobots/ruhakip.py

Bu sefer seçtiğim oyun oldukça eğlenceliye benziyor. Oyun sahasında yer alan belli sayıda robot oyuncuyu kovalıyor. Amaç onlara yakalanmadan hayatta kalmak. Robotlar birbirlerine çarptığında veya ölü robotlara çarptığında yok oluyorlar. Oyun sahasında robotlar dışında duvarlar da var. Oyuncunun teleporter'ı da bulunuyor ve isterse sahada rastgele bir konuma ışınlanabiliyor. Ben senaryoda robot yerine hayalet, ölü robot yerine avcı kavramlarını kullanmayı planlıyorum. Oyuncunun hayatta kaldığı durumları da puanlayarak bir skor sistemi eklemek istiyorum. Hayaletler birbirlerine çarptığında veya bir avcı hayaletle karşılaştığında aslında avcı hayalete dönüşüp oldukları yerde kalıyorlar. Oyuncu duvarları kullanıp saklanır ve X'leri birbirlerine çarptırıp sahada hiç canlı hayalet kalmayana kadar devam edebilirse oyunu kazanmış sayılıyor. Oyun ekrana sahayı ve güncel konumlarına göre karakterleri çizip oyuncudan sonraki hamlesini bekliyor. Oynayabileceği hamleleri de A,S,D,W,X kombinasyonlarına göre yerleştirir.

İşte birkaç ekran görüntüsü.

./assets/game07_1.png

./assets/game07_2.png

./assets/game07_3.png

İlk kodlarda oyunu kazanmakta zorlandığım için azcık sabit değerlerle oynadım ve volaaa!!!

./assets/game07_4.png

Tüh yahu...

./assets/game07_5.png

Öğrenilenler

  • chr fonksiyonu ile decimal değerin karşılığı olan bir unicode karakteri elde edebiliriz.
  • Bir for döngüsündeki sayaç değerini kullanmıyorsak _ operatörü ile onu kullanmayacağımızı belirtebiliriz.
  • Aynı ifadede birden fazla atamayı ardışıl = operatörleri kullanarak sağlayabiliriz. (x=y=z=3.14 gibi)
  • Bir tuple'ın değerlerini eşitliğin sol tarafındaki ayrı değişkenlere alabiliriz.
  • Döngüde herhangi bir koşul sebebiyle sonraki iterasyona devam etmek için continue operatörünü kullanabiliriz.
  • Diziden eleman çıkarmak için del fonksiyonundan yararlanabiliriz.
  • Bir listeden remove fonksiyonu ile öğe çıkarabilir append ile de ekleyebiliriz.

Çarpanlarımı Bil (Factor Finder)

Game08_FactorFinder/carpbul.py

Seçtiğim bir sonraki bölüm bir sayının çarpanlarını bulmak için tasarlanış. İlerleyen kısımlarda asal sayı bulma oyununda kullanılacağı için önce buna bakmak istedim. İşleyiş şöyle; oyuncudan bir sayı girmesi isteniyor ve program bu sayının çarpanlarını söylüyor. Belki bunu biraz daha eğlenceli hale getirebiliriz. Program oyuncuya bir sayı verip çarpanlarını söylemesini isteyebilir. Hatta doğru cevap bulana kadar ki zamanı da ölçüp bir puanlama yapsın ;) Tabii başlamadan önce bir sayının çarpanları nasıl bulunur konusuna bakmakta yarar var. Teorik olarak bir sayının 1 ve kareköküne kadar olan tam bölenlerini çarpanları olarak düşünebiliriz.

İşte oyundan birkaç görüntü.

./assets/game08_1.png

./assets/game08_2.png

Öğrenilenler

  • Anlık zaman bilgisi için time modülünde time fonksiyonunu kullanabilir, t1 ve t2 arasındaki farkı saniye cinsinden elde edebiliriz.
  • int operatörü ile kayan noktalı bir sayının küsürat sonrası sıfıra yuvarlanarak dönüştürülmüş halini elde edebiliriz.
  • Bir bölme işleminde küsüratı komple atmak için // operatöründen yararlanabiliriz.
  • Bir sayının karekökünü elde etmek için math modülünün sqrt fonksiyonu kullanılabilir.
  • set(iterable özellikte nesne) ile iterasyon özelliği sunan bir nesnenin elemanlarının düzensiz sırada ama tekrarsız halini elde edebiliriz.
  • Bir listenin elemanlarını sıralamak için sort metodunu kullanabiliriz.
  • enumerate(iterable özellikte nesne) fonksiyonu ile bir nesne dizisi üstünden ileri yönlü hareket etmemizi sağlayacak fonksiyonelliği elde edebiliriz. Enumerate, indis ve elemanın kendisinden oluşan çiftleri kullanmamıza izin verir.
  • str(any) ile sayısal bir içeriği string türe dönüştürebiliriz.
  • join fonksiyonu ile iterable özellikteki bir string dizisi elemanlarını ilgili karakterle birleştirerek yeni bir metin katarı oluşturabiliriz.
  • Belli bir aralıkta yürüyecek for döngüsü oluşturmak için range fonksiyonundan yararlanabiliriz.
  • Güncel thread'i belli süre duraksatmak için time modülünün sleep fonksiyonunu kullanabiliriz.

Collatz Gibi Düşün (Collatz Sequence)

Alman matematikçi Lothar Collatz 1932'de henüz 20li yaşların başında iken değişik bir sayı dizisi keşfetmiş. Hatta öyle bir sayı dizisi ki tüm pozitif sayılar için geçerliliği henüz ispatlanamamış. Olay oldukça basit. Sıfırdan büyük bir pozitif sayı alıyoruz. Çift sayı ise ikiye bölüyor, tek sayı ise üçle çarpıp bir ekliyoruz ve bu şekilde sıralamadaki sonraki sayıyı elde ediyoruz. Aynı işlemleri elde edilen yeni sayıya da uyguluyoruz. Collatz'ın keşfi ise şu; sıralama en nihayetinde 1 rakamı ile bir yerde sonlanıyor ve hatta 4,2,1,4 döngüsüyle devam etmeye başlıyor.

n=7 için bakalım.

  • 7 tek sayıdır. Dolayısıyla sonraki sayı (7 * 3) + 1 = 22 olur.
  • 22 çift sayıdır ve sonraki sayı 22 / 2 = 11 olur.
  • 11 tek sayıdır ve sonraki sayı (11 * 3) + 1 = 34 olur.
  • 34 çift sayıdır ve sonraki sayı 17 olur.

Bu şekilde devam edersek aşağıdaki diziyi elde ederiz.

17, 52, 36, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1.

Kitapta bu teoreme göre bir oyun yazdırılmakta. Ben biraz daha değiştirip eğlenceyi artırmaya çalışacağım :) Bilgisayar 1 ile 100 arasında rastgele bir sayı söyleyecek. Oyuncudan Collatz sıralamasına göre kaç adımda 1 sayısına ulaşılacağını tahmin etmesini isteyecek. Bilirse kazanır bilemezse kaybeder ve isterse yeni bir rastgele sayı ile oyuna devam eder. Terminalden oyuncuya Collatz problemini anlatan bir yardım dokümanı hizmeti de sunabilirim.

Game09_CollatzSequence/collatzgibidusun.py

Oyundan birkaç görüntü.

./assets/game09_1.png

./assets/game09_2.png

./assets/game09_3.png

./assets/game09_4.png

Öğrenilenler

  • Bir text dosya satır satır nasıl okunur ve Türkçe karakterler ekrana sorunsuz nasıl basılır.
  • Bir fonksiyondan birden fazla değer döndürebiliriz.
  • Birden fazla değer dönen fonksiyonların sonuçlarını tek satırda n sayıda değişkene atayabiliriz.
  • String bir değeri tamsayıya dönüştürmek için int fonksiyonunu kullanabiliriz.

Dörtlüyü Bul Kazan (Four in a row)

Kitaptan seçtiğim bir diğer oyunu görseli olmadan anlatmak kolay değil yine de deneyelim. Oyun iki oyuncuyla oynanıyor. Her birinin farklı renklerde ve aynı sayıda yuvarlak pulları var. Matris şeklinde dik duran bir alet söz konusu. Her oyuncu tahtanın üstünden kendi pulunu sırasıyla bırakıyor. Pullar dikey sütun boyunca boş olan yere iniyor. Aynı renkten yanyana dört tane pulu denk getiren oyuncu oyunu kazanıyor :)) Pullar yatayda, dikeyde veya çarprazda aynı sırada olabilirler. Anlatması zor o yüzden terminaldeki versiyonuna geçelim.

Game10_FourInARow/dortlukazanir.py

Oyuundan birkaç görüntü.

./assets/game10_1.png

./assets/game10_2.png

./assets/game10_3.png

./assets/game10_4.png

./assets/game10_5.png

Kitapta belirtildiği gibi oyun tahtasının satır, sütun değerlerini değiştirdikten sonrası...

./assets/game10_6.png

Öğrenilenler

  • Bir fonksiyona parametre olarak kaç tane değer geçeceğimiz bilemediğim durumlarda * operatöründen yararlanabiliriz.
  • Bir tuple değerinin sıra numarasını yakalamak için index fonksiyonundan yararlanabiliriz.
  • for döngülerinde geriye doğru gitmek için range(max,min,-1) formatını kullanabiliriz.
  • Ekrandan girilen metinsel ifadelerdeki boşlukları kaldırmak için strip fonksiyonundan yararlanılabilir.
  • print fonksiyonundaki placeholder' da tuple türünü kullanabiliriz. Tüm tuple elemanları basılır.

Adam Asmaca (Hangmane and Guilltoine)

Seçtiğim 11nci örnek adam asmaca oyunu :) Örnekte hayvanlar aleminden kelimeler kullanılmış. Ben şehirleri kullanayım diyorum. Hatta ülke bazında şehirler olsun ve kaynak olarak bir json dosya kullanalım. Hacklenmeye müsait olacak bu şekilde tabii. İdeal senaryoda kelime havuzunu bir servis üstünden güvenilir bir ağdan getirmek daha mantıklı olabilir. Neyse. Maksat terminalde python ile eğlenceli dakikalar geçirmek :)

Game11_Hangmane/adamasmaca.py

İşte oyundan birkaç kare.

./assets/game11_1.png

./assets/game11_2.png

./assets/game11_3.png

Öğrenilenler

  • Bir Json dosya içeriğini okumak için json modülündeki fonksiyonlardan yararlanabiliriz.
  • Dictionary türünde veriler key,value şeklinde tutulur ve items fonksiyonu ile bu çiftler üzerinde döngüsel iterasyonlar kullanılabilir.
Owner
Burak Selim Senyurt
Matematik Mühendisi, MBAci, eski MVP, blogger, @nedirtv editörü. Turuncu sakallı bir programcı.
Burak Selim Senyurt
A simple watcher for the XTZ/kUSD pool on Quipuswap

Kolibri Quipuswap Watcher This repo holds the source code for the QuipuBot bot deployed to the #quipuswap-updates channel in the Kolibri Discord Setup

Hover Labs 1 Nov 18, 2021
How to build an Fahrenheit to Celsius Converter in Python

Generally to measure the temperature we make use of one of these two popular units i.e. Fahrenheit & Celsius.

PyLaboratory 0 Feb 07, 2022
This repo will have a small amount of Chrome tools that can be used for DFIR, Hacking, Deception, whatever your heart desires.

Chrome-Tools Overview Welcome to the repo. This repo will have a small amount of Chrome tools that can be used for DFIR, Hacking, Deception, whatever

5 Jun 08, 2022
Hera is a Python framework for constructing and submitting Argo Workflows.

Hera is an Argo Workflows Python SDK. Hera aims to make workflow construction and submission easy and accessible to everyone! Hera abstracts away workflow setup details while still maintaining a cons

argoproj-labs 241 Jan 02, 2023
to learn how to do pull request and do contribution to other's repo

Hacktoberfest-2021 - open-source-contribution An Open Source repository to Teach people How to contribute to open sources. 💥 🔥 JOIN PVX PROGRAMMING

Shubham Rawat 82 Dec 26, 2022
A simple 3D rigid body simulation written in python

pyRigidBody3d A simple 3D rigid body simulation written in python

30 Oct 07, 2022
A simple way to read and write LAPS passwords from linux.

A simple way to read and write LAPS passwords from linux. This script is a python setter/getter for property ms-Mcs-AdmPwd used by LAPS inspired by @s

Podalirius 36 Dec 09, 2022
This repository contains code for building education startup.

Learning Management System Overview It's the code for EssayBrain, a tool for teacher that automatically grades and validates essays. In order to valid

Shyam Das Shrestha 1 Nov 21, 2021
Software for visualization of RTStruct structures on CT images

This script is responsible for the operation of the program, it is responsible for both creating the GUI and the process of processing images from dicom files. The program is based on the use of the

Adam Piszczek 0 Jun 29, 2022
A simply program to find active jackbox.tv game codes

PeepingJack A simply program to find active jackbox.tv game codes How does this work? It uses a threadpool to loop through all possible codes in a ran

3 Mar 20, 2022
CMPE 204 Modelling Project

CISC/CMPE 204 Modelling Project Welcome to the major project for CISC/CMPE 204 (Fall 2021)! Change this README.md file to summarize your project (few

totallyrin 2 May 16, 2022
Displays Christmas-themed ASCII art

Christmas Color Scripts Displays Christmas-themed ASCII art. This was mainly inspired by DistroTube's Shell Color Scripts Screenshots ASCII Shadow Tex

1 Aug 09, 2022
ioztat is a storage load analysis tool for OpenZFS

ioztat is a storage load analysis tool for OpenZFS. It provides iostat-like statistics at an individual dataset/zvol level.

Jim Salter 116 Nov 25, 2022
berisi kodingan kodingan python umum yang kubuat.

python-codevault berisi kodingan kodingan python umum yang kubuat. untuk memudahkan transisi dan menjadi refrensi tutorial. daily challange for myself

Agung Zon Blade 1 Dec 19, 2021
Hello, Welcome to this repo. don't forget to read guidelines in readme.md

Hacktoberfest_2021 If you looking for your first contribution, we are here to help. Just create a simple program using any language you like in our fo

Wafa Rifqi Anafin 117 Dec 14, 2022
Consolemenu on python with pynput

ConsoleMenu Consolemenu on python 3 with pynput Powered by pynput and colorama Description Модуль позволяющий сделать меню выбора с помощью стрелок дл

KrouZ_CZ 2 Nov 15, 2021
A curated list of awesome things related to Pydantic! 🌪️

Awesome Pydantic A curated list of awesome things related to Pydantic. These packages have not been vetted or approved by the pydantic team. Feel free

Marcelo Trylesinski 186 Jan 05, 2023
Spartan implementation of H.O.T.T.

Down The Path I was walking down the line, Trying to find some peace of mind. Then I saw you, You were takin' it slow, And walkin' it one step at a ti

Trebor Huang 25 Aug 05, 2022
Simple programming language built on Python.

Serial Another programming language. Built on Python. Building and running program In order to run the program on serial, unfortunately you still need

Aleksey Demchenkov 1 Dec 09, 2021
Код файнтюнинга оригинального CLIP на русский язык

О чем репозиторий В этом репозитории представлен способ файтюнить оригинальный CLIP на новый язык Почему модель не видит женщину и откуда на картинке

Valentina Biryukova 7 Feb 06, 2022