├── QR Code.py ├── README.md ├── Welcome To Git Hub.py ├── calculator.py ├── clock.py └── ninja.py /QR Code.py: -------------------------------------------------------------------------------- 1 | import pyqrcode 2 | import png 3 | from pyqrcode import QRCode 4 | 5 | text = input("Enter your sample text: ") 6 | filename = input("Enter filename: ") 7 | make_extension = f"{filename}"+".png" 8 | url = pyqrcode.create(text) 9 | url.show() 10 | url.png(make_extension,scale=2) 11 | 12 | 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # python-Graphics 2 | author:https://github.com/rezadrakhshan/ 3 | -------------------------------------------------------------------------------- /Welcome To Git Hub.py: -------------------------------------------------------------------------------- 1 | #Welcome To My GitHub 2 | import turtle 3 | import time 4 | 5 | screen = turtle.Screen() 6 | screen.title("کشیدن نام") 7 | t = turtle.Turtle() 8 | t.speed(1) 9 | 10 | def draw_letter(x, y, letter, color): 11 | t.penup() 12 | t.goto(x, y) 13 | t.pendown() 14 | t.color(color) 15 | t.write(letter, align="center", font=("Arial", 24, "normal")) 16 | time.sleep(1) 17 | 18 | name = "Welcome To My GitHub" 19 | x_position = -160 20 | y_position = 0 21 | 22 | for letter in name: 23 | if letter == ' ': 24 | x_position += 20 25 | elif letter == 'o': 26 | draw_letter(x_position, y_position, letter, "red") 27 | x_position += 30 28 | else: 29 | draw_letter(x_position, y_position, letter, "blue") 30 | x_position += 30 31 | if x_position > 200: 32 | time.sleep(2) 33 | t.clear() 34 | x_position = -160 35 | 36 | screen.exitonclick() 37 | -------------------------------------------------------------------------------- /calculator.py: -------------------------------------------------------------------------------- 1 | from tkinter import * 2 | import tkinter.messagebox 3 | cal = Tk() 4 | num1 = StringVar() 5 | num2 = StringVar() 6 | res = StringVar() 7 | cal.title('calculator') 8 | cal.geometry('400x200') 9 | cal.resizable(width=False,height=False) 10 | color = 'gray' 11 | cal.configure(bg=color) 12 | top_first = Frame(cal, width=400,height=50,bg=color) 13 | top_first.pack(side='top') 14 | top_second = Frame(cal, width=400,height=50,bg=color) 15 | top_second.pack(side='top') 16 | top_third = Frame(cal, width=400,height=50,bg=color) 17 | top_third.pack(side='top') 18 | top_forth = Frame(cal, width=400,height=50,bg=color) 19 | top_forth.pack(side='top') 20 | top_five = Frame(cal, width=400,height=50,bg=color) 21 | top_five.pack(side='top') 22 | btn_minus = Button(top_forth,text="-", width=10 , highlightbackground=color , command=lambda : minus()) 23 | btn_minus.pack(side=LEFT , padx=5 , pady=5) 24 | btn_plus = Button(top_forth,text="+", width=10 , highlightbackground=color , command=lambda : plus()) 25 | btn_plus.pack(side=LEFT , padx=5 , pady=5) 26 | btn_MUL = Button(top_forth,text="*", width=10 , highlightbackground=color , command=lambda : mul()) 27 | btn_MUL.pack(side=LEFT , padx=5 , pady=5) 28 | btn_div = Button(top_forth,text="/", width=10 , highlightbackground=color , command=lambda : div()) 29 | btn_div.pack(side=LEFT , padx=5 , pady=5) 30 | btn_clear = Button(top_five,text="clear", width=10 , highlightbackground=color ,command=lambda : clear()) 31 | btn_clear.pack(side=LEFT , padx=5 , pady=5) 32 | btn_creator = Button(top_five,text="creator", width=10 , highlightbackground=color , command=lambda : creator()) 33 | def errorMSG(ms): 34 | if ms == "error": 35 | tkinter.messagebox.showerror('Error','somthing went wrong') 36 | elif ms == 'division error': 37 | tkinter.messagebox.showerror('Division error','cant not divide by 0!') 38 | def plus(): 39 | try: 40 | value = float(num1.get())+float(num2.get()) 41 | res.set(value) 42 | except: 43 | errorMSG('error') 44 | def minus(): 45 | try: 46 | value = float(num1.get())-float(num2.get()) 47 | res.set(value) 48 | except: 49 | errorMSG('error') 50 | def mul(): 51 | try: 52 | value = float(num1.get())*float(num2.get()) 53 | res.set(value) 54 | except: 55 | errorMSG('error') 56 | def div(): 57 | if num2.get() == '0': 58 | errorMSG('division error') 59 | elif num2.get() != '0': 60 | try: 61 | value = float(num1.get()) / float(num2.get()) 62 | res.set(value) 63 | except: 64 | errorMSG('error') 65 | def clear(): 66 | num1.set('') 67 | num2.set('') 68 | res.set('') 69 | 70 | def creator(): 71 | tkinter.messagebox.showinfo("creator",'this calculator has been created by rezadrakhshan') 72 | 73 | 74 | 75 | btn_creator.pack(side=LEFT , padx=5 , pady=5) 76 | label_first_num = Label(top_first,text="enter your first number",bg=color) 77 | label_first_num.pack(side=LEFT,padx=5,pady=5) 78 | first_num = Entry(top_first,highlightbackground=color ,textvariable=num1) 79 | first_num.pack(side=LEFT) 80 | label_second_num = Label(top_second,text="enter your second number",bg=color) 81 | label_second_num.pack(side=LEFT,padx=5,pady=5) 82 | second_num = Entry(top_second,highlightbackground=color ,textvariable=num2) 83 | second_num.pack(side=LEFT) 84 | label_result= Label(top_third,text="result",bg=color) 85 | label_result.pack(side=LEFT,padx=5,pady=5) 86 | result = Entry(top_third,highlightbackground=color ,textvariable=res) 87 | result.pack(side=LEFT) 88 | cal.mainloop() -------------------------------------------------------------------------------- /clock.py: -------------------------------------------------------------------------------- 1 | import tkinter 2 | 3 | from time import strftime 4 | 5 | tk = tkinter.Tk() 6 | 7 | title = tk.title("clock") 8 | 9 | tk.resizable(0,0) 10 | 11 | 12 | def time(): 13 | string = strftime("%H:%M:%S %p") 14 | clocktime.config(text=string) 15 | clocktime.after(1000, time) 16 | 17 | clocktime = tkinter.Label( 18 | tk, font=("calibri",40,"bold"),background="red",foreground="yellow" 19 | ) 20 | 21 | clocktime.pack(anchor="center") 22 | 23 | time() 24 | 25 | tk.mainloop() 26 | 27 | -------------------------------------------------------------------------------- /ninja.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | ninja = turtle.Turtle() 3 | ninja.speed(100) 4 | 5 | for i in range(120): 6 | ninja.forward(250) 7 | ninja.right(140) 8 | ninja.forward(10) 9 | ninja.left(60) 10 | ninja.forward(40) 11 | ninja.right(120) 12 | 13 | ninja.penup() 14 | ninja.setposition(0, 0) 15 | ninja.pendown() 16 | 17 | ninja.right(1) 18 | 19 | 20 | 21 | 22 | turtle.done() --------------------------------------------------------------------------------