python/print 发表于 2020-5-3 16:24:40

我出一道题

输入1+1
打印1+1=2
输入1+2
打印1+2=3
我不知道怎么编
python程序

wp231957 发表于 2020-5-3 16:26:59

eval

liuzhengyuan 发表于 2020-5-3 16:42:25

关于 eval:https://www.runoob.com/python/python-func-eval.html

a = input()
s = eval(a)
print(a + '=' + str(s))

永恒的蓝色梦想 发表于 2020-5-3 16:44:09

from sys import stdin,stdout
def func():
        string=stdin.readline().strip()
        stdout.write(string+'='+eval(string).__str__())

乘号 发表于 2020-5-3 16:44:24

from tkinter import *

root = Tk()

frame = Frame(root)
frame.pack(padx=10,pady=10)

v1 = StringVar()
v2 = StringVar()
v3 = StringVar()

def test(content):
    if content.isdigit():
      return True
    else:
      return False

testCMD = root.register(test)
Entry(frame,textvariable=v1,width=10,validate="key",\
      validatecommand=(testCMD,'%P')).grid(row=0,column=0)

Label(frame,text="+").grid(row=0,column=1)

Entry(frame,textvariable=v2,width=10,validate="key",\
      validatecommand=(testCMD,'%P')).grid(row=0,column=2)

Label(frame,text="=").grid(row=0,column=3)

Entry(frame,textvariable=v3,width=10,validate="key",\
      validatecommand=(testCMD,'%P')).grid(row=0,column=4)

def calc():
    result = int(v1.get()) + int(v2.get())
    v3.set(result)

Button(frame,text="计算结果",command=calc).grid(row=1,column=2,pady=5)

mainloop()

python/print 发表于 2020-5-3 16:45:22

永恒的蓝色梦想 发表于 2020-5-3 16:44


代码可以少一点吗

python/print 发表于 2020-5-3 16:48:25

乘号 发表于 2020-5-3 16:44


代码好像太多了

永恒的蓝色梦想 发表于 2020-5-3 16:51:36

python/print 发表于 2020-5-3 16:45
代码可以少一点吗

根据代码量来判断代码好坏是极其愚蠢的行为。

永恒的蓝色梦想 发表于 2020-5-3 16:56:14

python/print 发表于 2020-5-3 16:48
代码好像太多了

如果真的想要短,可以这么写(只支持3.8及以上)print(f"{(s:=input())}={eval(s)}")
页: [1]
查看完整版本: 我出一道题