wqiori 发表于 2023-3-6 20:50:56

自动解算出n×π(功能比你想象的要多!!!)撒币啦撒币啦

本帖最后由 wqiori 于 2023-3-6 20:53 编辑

1.导语
作者在上小学6年级,正在学圆柱和圆锥,但π(3.14)这个小数算起来就是个煎熬,所以我做出了这个东西
2.正文
本作品是用tkinter写的,欢迎借鉴
我写了两个版本,一个是可以保存txt文件,想打印保存下来的鱼油可以使用(我起的名字是n×π.py);另一个则是临时性较强,更多只是为了扫一眼(我起的名字是n×π_plus.py)
代码如下:
#n×π.py
from tkinter import *
from tkinter import filedialog, dialog


root = Tk()

root.title('计算n×π')
root.geometry('400x75')

var1 = IntVar()
var1.set(100)

Label(root, text='从1到                   ×π', font=('楷体', 13)).place(x=25, y=20)

Entry(root, font=('JetBrains Mono', 10), fg='blue', textvariable=var1).place(x=75, y=22)

def start():
    file = filedialog.asksaveasfile(mode='w', defaultextension='.txt')
    file_name = file.name
    f = open(file_name, 'w')
   
    def 让我看看():
      global file
      
      text = Tk()
      text.title(file_name)
      
      sb = Scrollbar(text)
      sb.pack(side=RIGHT, fill=Y)
      
      txtfile = open(file_name, 'r')
      
      theText = Text(text, height=50, width=40, font=('微软雅黑', 20), yscrollcommand=sb.set)
      theText.pack()
      
      theText.insert(INSERT, txtfile.read())
      
      sb.config(command=theText.yview)
      
      mainloop()
      
    for i in range(1, int(var1.get())+1):
      f.write(str(i) + ' × 3.14 = ' + str(i * 314 / 100) + '\n')
      
    f.close()
    var2 = []
   
    Button(root, font=('楷体', 15), text='让我看看', command=让我看看).place(x=400, y=15)

    root.geometry('500x75')


Button(root, font=('楷体', 15), text='开始计算', command=start).place(x=300, y=15)


root.mainloop()

图片:




#n×π_plus.py
from tkinter import *

root = Tk()

root.title('计算n×π')
root.geometry('400x75')

var1 = IntVar()
var1.set(100)

Label(root, text='从1到                   ×π', font=('楷体', 13)).place(x=25, y=20)

Entry(root, font=('JetBrains Mono', 10), fg='blue', textvariable=var1).place(x=75, y=22)

def start():
    def 让我看看():
      text = Tk()
      
      sb = Scrollbar(text)
      sb.pack(side=RIGHT, fill=Y)
      
      theText = Text(text, height=50, width=40, font=('微软雅黑', 20), yscrollcommand=sb.set)
      theText.pack()
      
      var2 = []
      for i in range(1, int(var1.get())+1):
            var2.append(str(i) + ' × 3.14 = ' + str(i * 314 / 100) + '\n')
      
      for i in range(len(var2)):
            theText.insert(INSERT, var2)
            
      sb.config(command=theText.yview)
      
      mainloop()

    Button(root, font=('楷体', 15), text='让我看看', command=让我看看).place(x=400, y=15)

    root.geometry('500x75')


Button(root, font=('楷体', 15), text='开始计算', command=start).place(x=300, y=15)


root.mainloop()

图片:


下面是打包好的exe文件,欢迎使用!
蓝奏链接(n×π.exe):
https://wwxl.lanzoul.com/ih0vB0pgmvyj
密码:9bw8
蓝奏链接(n×π_plus.exe)
https://wwxl.lanzoul.com/i7itg0pgmxcj
密码:anok

wqiori 发表于 2023-3-6 20:54:57

出了点问题,n×π_plus的图片没有显示出来,不过和普通的差不多,你们试试就知道了

一点沙 发表于 2023-3-6 21:18:36

厉害{:10_270:}

FLY2012cl 发表于 2023-3-6 23:42:56

感谢大佬
新人来蹭点渔币

hornwong 发表于 2023-3-7 00:05:34

感谢分享!

平凡之路1314 发表于 2023-3-7 04:56:36

感谢分享

liuhongrun2022 发表于 2023-3-7 06:50:19

这个好

歌者文明清理员 发表于 2023-3-7 07:35:42

撒币听起来不太吉利

tsElim 发表于 2023-3-7 08:19:04

厉害{:5_106:}

kerln888 发表于 2023-3-7 08:47:19

{:10_256:}{:10_256:}{:10_256:}厉害

las6040 发表于 2023-3-7 08:48:32

学习了!!

athenna524 发表于 2023-3-7 09:04:56

不错不错,学习一下

1613551 发表于 2023-3-7 09:05:30

{:10_254:}

crisfo 发表于 2023-3-7 15:45:31

{:5_106:}厉害啦

sfqxx 发表于 2023-3-7 17:26:07

666

追梦少年啊 发表于 2023-3-7 21:40:57

666

一点五只耳 发表于 2023-3-7 23:25:12

感谢分享

woshizhangpengp 发表于 2023-3-8 00:07:42

{:5_106:}

涛4091 发表于 2023-3-8 09:43:35

太棒啦

象棋爱好者 发表于 2023-3-8 14:30:19

{:10_250:}
页: [1] 2 3 4
查看完整版本: 自动解算出n×π(功能比你想象的要多!!!)撒币啦撒币啦