# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'sanjiaoxing.py'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.

import turtle
import PyQt5
import tkinter
import string

class my_gui():
def __init__(self,init_window_name):
self.init_window_name=init_window_name
#设置窗口
def set_init_window(self):
self.init_window_name.title("判断三角形组成V1.0")
#定义窗口弹出时的默认展示位置
self.init_window_name.geometry('860x681+5+5')
#标签
self.init_data_labela=tkinter.Label(self.init_window_name,text="请输入A边:")
self.init_data_labela.grid(row=0,column=0)
self.init_data_labelb = tkinter.Label(self.init_window_name, text="请输入B边:")
self.init_data_labelb.grid(row=1, column=0)
self.init_data_labelc = tkinter.Label(self.init_window_name, text="请输入C边:")
self.init_data_labelc.grid(row=2, column=0)
#文本框
self.init_data_Texta=tkinter.Text(self.init_window_name,width=5,height=1)
self.init_data_Texta.grid(row=0,column=1)
self.init_data_Textb = tkinter.Text(self.init_window_name, width=5, height=1)
self.init_data_Textb.grid(row=1, column=1)
self.init_data_Textc = tkinter.Text(self.init_window_name, width=5, height=1)
self.init_data_Textc.grid(row=2, column=1)
self.ressult_data_Text=tkinter.Text(self.init_window_name,width=20,height=5)
self.ressult_data_Text.grid(row=0,column=4,rowspan=5,columnspan=10)
#按钮
self.str_trans_to_judge_button=tkinter.Button(self.init_window_name,text="判断",command=self.str_trans_judge)
self.str_trans_to_judge_button.grid(row=3,column=1)

#功能函数
def str_trans_judge(self):
a = self.init_data_Texta.get(1.0,tkinter.END).strip().replace("\n","").encode() #获取A数据
b = self.init_data_Textb.get(1.0, tkinter.END).strip().replace("\n", "").encode() #获取B数据
c = self.init_data_Textc.get(1.0, tkinter.END).strip().replace("\n", "").encode() #获取C数据

lst=[float(a),float(b),float(c)]
lst.sort()
if lst:
try:
if lst[0]+lst[1]>lst[2] and lst[0]>0:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"您输入的三边可以组成三角形")
if lst[0]==lst[1]==lst[2]:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"您输入的是等边三角形")
elif lst[0]==lst[1]!=lst[2] or lst[0]!=lst[1]==lst[2]:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"您输入的是等腰三角形")
elif lst[0]!=lst[1]!=lst[2]:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"您输入的是普通三角形")
else:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"输入错误")
except:
self.ressult_data_Text.delete(1.0,tkinter.END)
self.ressult_data_Text.insert(1.0,"有错误")

def gui_start():
init_window = tkinter.Tk()
ZMJ_PORTAL = my_gui(init_window)

#设置根窗口默认属性
ZMJ_PORTAL.set_init_window()

init_window.mainloop()

gui_start()

用python实现输入三边判断能否组成三角形的更多相关文章

  1. 任意输入3个数,判断能否组成三角形(python)

    任意输入3个数,判断能否组成三角形. 三角形:两边之和大于第三边 直角三角形:勾股定理 代码如下: # 输入合法性检查,必须输入正数,不支持科学计数法'''try: <语句>except ...

  2. Python输入数据类型判断正确与否的函数大全(非常全)

      对于python输入数据类型判断正确与否的函数大致有三类: (1)type(),它的作用直接可以判断出数据的类型 (2)isinstance(),它可以判断任何一个数据与相应的数据类型是否一致,比 ...

  3. Python基础:条件判断与循环的两个要点

    一.条件判断: Python中,条件判断用if语句实现,多个条件判断时用if...elif实现:看下面一段程序 #python 3.3.5 #test if...elif age = 20 if ag ...

  4. Python小练习之判断一个日期是一年的第几天

    python练手遇到的一个问题写了个统一公式,不用麻烦的分各种类,如果有人测试出错误请评论通知. #分单双月 def dayNum(month,day,isLeap): if month % 2 != ...

  5. python文件输入和输出

    1.1文件对象 文件只是连续的字节序列.数据的传输经常会用到字节流,无论字节流是由单个字节还是大块数据组成.1.2文件内建函数open()和file() 内建函数open()的基本语法是: file_ ...

  6. 3. Python中的分支判断、循环

    本文利用的是Python 3.x版本,建议学习3.x版本 Python中的分支判断.循环 1. 分支条件判断 1.1 比较操作 以下是数之间常见的比较操作,例如5>3就是数学意义上的比较,5是大 ...

  7. python进行mp3格式判断

    python进行mp3格式判断 项目中使用mp3格式进行音效播放,遇到一个mp3文件在程序中死活播不出声音,最后发现它是wav格式的文件,却以mp3结尾.要对资源进行mp3格式判断,那么如何判断呢,用 ...

  8. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  9. python基础3 条件判断 if嵌套

    if单向判断: stonenumber=6#为宝石数量赋值 if stonenumber>=6: #条件:如果你拥有的宝石数量大于等于6个 print('你拥有了毁灭宇宙的力量') #结果:显示 ...

随机推荐

  1. 7_线性控制器设计(Linear Controller Design)

    开环系统中 状态方程,其中A的特征值将决定这个系统的表现(稳定性或者收敛速度:特征值小于0时系统稳定) 如果开环系统特征值大于0时(即系统不稳定时): 可以引入输入量U时(U是关于状态变量X的函数), ...

  2. JS:数组中push对象,覆盖问题

    发现将对象push进数组,后面的值会覆盖前面的值,最后输出的都是最后一次的值.其实这一切都是引用数据类型惹的祸.如果你也有类似问题,可以继续看下去哦.下面代码模拟:将json对象的每个键值对,单独搞成 ...

  3. JavaScript中函数节流的理解

    函数节流的原理 函数节流,就是对会频繁触发的函数事件做一些限制,让这些函数可以在每隔一定的时间或者每次满足一定的条件下再触发.一般我们会给他起一个名字throttle.也就是节流的意思.一般这样的函数 ...

  4. 前端系列——React开发必不可少的eslint配置

    项目需要安装的插件 "babel-eslint": "^8.0.3", "eslint": "^4.13.1", &qu ...

  5. 实验 3 Spark 和 Hadoop 的安装

      1.           安装 Hadoop 和 Spark 进入 Linux 系统,参照本教程官网"实验指南"栏目的"Hadoop 的安装和使用",完成 ...

  6. C# 一个基于.NET Core3.1的开源项目帮你彻底搞懂WPF框架Prism

    --概述 这个项目演示了如何在WPF中使用各种Prism功能的示例.如果您刚刚开始使用Prism,建议您从第一个示例开始,按顺序从列表中开始.每个示例都基于前一个示例的概念. 此项目平台框架:.NET ...

  7. 文件IO-Properties

    java.lang.Object 继承者 java.util.Dictionary<K,V> 继承者 java.util.Hashtable<Object,Object> 继承 ...

  8. 帝国CMS批量提取正文内容到简介

    最近接到一个帝国CMS模板改版项目,自带的数据可能是采集的,以前的简介字段内容只截取了60个字,新模板的简介60字符太少了,不美观,想让简介都截取200个字,怎么批量修改呢,文章太多了手动改肯定不行, ...

  9. linux centos 8.2 安装docker

    1 使用yum -y install docker安装后启动docker提示Failed to start docker.service: Unit docker.service not found. ...

  10. 简易table form梳理

    <!--      A:表格-table    <双标签,day3上午第一次接触>         作用:显示信息     一:table简易案例:         <tabl ...