【零基础入门Python】制作的简单计算器程序

 ✍面向读者:所有人

所属专栏:零基础入门Pythonhttps://blog.csdn.net/arthas777/category_12455877.html

制作简单计算器的Python程序

制作GUI计算器的Python程序

 时间复杂性:

空间复杂性:

在这里,我们将制作一个简单的计算器,在其中我们可以执行基本的算术运算,如加法、减法、乘法或除法。


制作简单计算器的Python程序

创建一个简单的计算器,它可以根据用户输入执行基本的算术运算,如加法、减法、乘法或除法。方法:
用户选择所需的操作。选项1、2、3和4有效。
取两个数字,并使用if…elif…else分支来执行特定的部分。
使用函数add()、subtract()、multiply()和divide()计算各自的运算。

# Python program for simple calculator

# Function to add two numbers
def add(num1, num2):
	return num1 + num2

# Function to subtract two numbers
def subtract(num1, num2):
	return num1 - num2

# Function to multiply two numbers
def multiply(num1, num2):
	return num1 * num2

# Function to divide two numbers
def divide(num1, num2):
	return num1 / num2

print("Please select operation -\n" \
		"1. Add\n" \
		"2. Subtract\n" \
		"3. Multiply\n" \
		"4. Divide\n")


# Take input from the user
select = int(input("Select operations form 1, 2, 3, 4 :"))

number_1 = int(input("Enter first number: "))
number_2 = int(input("Enter second number: "))

if select == 1:
	print(number_1, "+", number_2, "=",
					add(number_1, number_2))

elif select == 2:
	print(number_1, "-", number_2, "=",
					subtract(number_1, number_2))

elif select == 3:
	print(number_1, "*", number_2, "=",
					multiply(number_1, number_2))

elif select == 4:
	print(number_1, "/", number_2, "=",
					divide(number_1, number_2))
else:
	print("Invalid input")

Output:

Please select operation -
1. Add
2. Subtract
3. Multiply
4. Divide
Select operations form 1, 2, 3, 4 : 1
Enter first number : 15
Enter second number : 14
15 + 14 = 29

制作GUI计算器的Python程序


计算器的GUI,它将有助于加法、减法、乘法和除法

# pip install tkinter
import tkinter as tk
import tkinter.messagebox
from tkinter.constants import SUNKEN

window = tk.Tk()
window.title('Calculator-GeeksForGeeks')
frame = tk.Frame(master=window, bg="skyblue", padx=10)
frame.pack()
entry = tk.Entry(master=frame, relief=SUNKEN, borderwidth=3, width=30)
entry.grid(row=0, column=0, columnspan=3, ipady=2, pady=2)


def myclick(number):
	entry.insert(tk.END, number)


def equal():
	try:
		y = str(eval(entry.get()))
		entry.delete(0, tk.END)
		entry.insert(0, y)
	except:
		tkinter.messagebox.showinfo("Error", "Syntax Error")


def clear():
	entry.delete(0, tk.END)


button_1 = tk.Button(master=frame, text='1', padx=15,
					pady=5, width=3, command=lambda: myclick(1))
button_1.grid(row=1, column=0, pady=2)
button_2 = tk.Button(master=frame, text='2', padx=15,
					pady=5, width=3, command=lambda: myclick(2))
button_2.grid(row=1, column=1, pady=2)
button_3 = tk.Button(master=frame, text='3', padx=15,
					pady=5, width=3, command=lambda: myclick(3))
button_3.grid(row=1, column=2, pady=2)
button_4 = tk.Button(master=frame, text='4', padx=15,
					pady=5, width=3, command=lambda: myclick(4))
button_4.grid(row=2, column=0, pady=2)
button_5 = tk.Button(master=frame, text='5', padx=15,
					pady=5, width=3, command=lambda: myclick(5))
button_5.grid(row=2, column=1, pady=2)
button_6 = tk.Button(master=frame, text='6', padx=15,
					pady=5, width=3, command=lambda: myclick(6))
button_6.grid(row=2, column=2, pady=2)
button_7 = tk.Button(master=frame, text='7', padx=15,
					pady=5, width=3, command=lambda: myclick(7))
button_7.grid(row=3, column=0, pady=2)
button_8 = tk.Button(master=frame, text='8', padx=15,
					pady=5, width=3, command=lambda: myclick(8))
button_8.grid(row=3, column=1, pady=2)
button_9 = tk.Button(master=frame, text='9', padx=15,
					pady=5, width=3, command=lambda: myclick(9))
button_9.grid(row=3, column=2, pady=2)
button_0 = tk.Button(master=frame, text='0', padx=15,
					pady=5, width=3, command=lambda: myclick(0))
button_0.grid(row=4, column=1, pady=2)

button_add = tk.Button(master=frame, text="+", padx=15,
					pady=5, width=3, command=lambda: myclick('+'))
button_add.grid(row=5, column=0, pady=2)

button_subtract = tk.Button(
	master=frame, text="-", padx=15, pady=5, width=3, command=lambda: myclick('-'))
button_subtract.grid(row=5, column=1, pady=2)

button_multiply = tk.Button(
	master=frame, text="*", padx=15, pady=5, width=3, command=lambda: myclick('*'))
button_multiply.grid(row=5, column=2, pady=2)

button_div = tk.Button(master=frame, text="/", padx=15,
					pady=5, width=3, command=lambda: myclick('/'))
button_div.grid(row=6, column=0, pady=2)

button_clear = tk.Button(master=frame, text="clear",
						padx=15, pady=5, width=12, command=clear)
button_clear.grid(row=6, column=1, columnspan=2, pady=2)

button_equal = tk.Button(master=frame, text="=", padx=15,
						pady=5, width=9, command=equal)
button_equal.grid(row=7, column=0, columnspan=3, pady=2)

window.mainloop()

Output:

 时间复杂性:


此计算器的时间复杂度取决于计算中涉及的运算次数。加法、减法、乘法和除法等基本运算的时间复杂度为O(1)。对于涉及多个操作的更复杂的计算,时间复杂性将更高。


空间复杂性:


这个计算器的空间复杂度是O(1)。这是因为计算器只需要将用户输入和计算结果存储在固定量的存储器中。

相关推荐

  1. python基础入门 (6)-- python函数

    2023-12-19 00:22:01       14 阅读
  2. Python基础语法:使用Python编写一个简单计算器

    2023-12-19 00:22:01       40 阅读
  3. Python语言基础简单入门

    2023-12-19 00:22:01       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-19 00:22:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-19 00:22:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-19 00:22:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-19 00:22:01       20 阅读

热门阅读

  1. 深度学习epoch、psnr、epoch、step解释

    2023-12-19 00:22:01       35 阅读
  2. Linux命令行基础知识

    2023-12-19 00:22:01       44 阅读
  3. 数据结构基础小结

    2023-12-19 00:22:01       37 阅读