學會python——用python編寫一個計算機程序(python實例十六)

目錄

1.認識Python

2.環境與工具

2.1 python環境

2.2 Visual Studio Code編譯

3.編寫計算器程序

3.1 代碼構思

3.2 代碼實例

3.3 運行結果

?4.總結


1.認識Python

Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。

Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字或標點符號,它具有比其他語言更有特色的語法結構。

?

2.環境與工具

2.1 python環境

在Windows上使用命令行窗口查看所安裝的python版本

python --version

?

2.2 Visual Studio Code編譯

Visual Studio Code是一款由微軟開發且跨平臺的免費源代碼編輯器。該軟件以擴展的方式支持語法高亮、代碼自動補全、代碼重構功能,并且內置了命令行工具和Git 版本控制系統。

3.編寫計算器程序

3.1 代碼構思

面板上的每一個按鍵都是一個button控件,定義函數處理這些控件事件,進而實現單擊控件調用函數進行數學計算。

3.2 代碼實例

import tkinter as tkdef cal_command(event):but_text = event.widget.cget("text")if but_text == "=":try:result_num = str(eval(show_text.get()))but_text_new = result_numexcept Exception as e:show_text.set("Error")returnelif but_text == "C":but_text_new = ""else:but_text_new = show_text.get() + but_textshow_text.set(but_text_new)def create_button(text, row, column, width=12, height=2, columnspan=1):bt = tk.Button(text=text, width=width, height=height, font=("Arial", 14))bt.grid(row=row, column=column, columnspan=columnspan, sticky="nsew")bt.bind("<Button-1>", cal_command)return btdef layout():txt = ['7', '8', '9', '+', '4', '5', '6', '-', '1', '2', '3', '*', 'C', '0', '=', '/']but_index = 0for i in range(1, 5):for j in range(4):if but_index >= len(txt):breakif txt[but_index] == "=":create_button(txt[but_index], i, j, width=25, columnspan=2)breakelif txt[but_index] == "0":create_button(txt[but_index], i, j, width=25, columnspan=2)breakelse:create_button(txt[but_index], i, j)but_index += 1if __name__ == '__main__':Win = tk.Tk()Win.title("Calculator")Win.geometry("400x400")show_text = tk.StringVar(value='')lab = tk.Label(Win, relief=tk.SUNKEN, textvariable=show_text, width=25, height=2, anchor='e', font=("Arial", 18))lab.configure(background="white")lab.grid(row=0, column=0, columnspan=4, sticky="nsew")# 配置行和列的權重for i in range(5):Win.grid_rowconfigure(i, weight=1)for j in range(4):Win.grid_columnconfigure(j, weight=1)layout()Win.mainloop()

3.3 運行結果

?4.總結

通過定義各個按鈕進一步實現輸入輸出操作,從而實現了可視化計算器的程序編寫。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/web/38082.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38082.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38082.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【C語言】刷題筆記 Day1

多刷題 多思考 【題目1】 實現字母的大小寫轉換&#xff0c;實現多組輸入輸出 1. getchar 為輸入函數&#xff0c;EOF&#xff08;end of file&#xff09;為文件結束標志&#xff0c;通常為文件結束的末尾。 2. 題目中要求實現多組輸入輸出&#xff0c;那我們用 while 循…

RH442 計算機測量單位的換算

計算機測量單位的換算 計算機測量單位的換算 計算機測量單位的換算 在本練習中&#xff0c;您要將性能指標從一個單位換算成另一個單位。 成果 您要學會性能指標單位的換算。 以 student 用戶登錄 workstation 虛擬機&#xff0c;密碼為 student。 在 workstation上運行 l…

初步認識 B樹(B-tree)

定義 B樹&#xff08;B-tree&#xff09;是一種自平衡的多路搜索樹&#xff0c;廣泛應用于數據庫和文件系統的索引結構中。它能夠保持數據有序&#xff0c;同時提供高效的插入、刪除和查找操作。 一、基本概念 定義&#xff1a;B樹是一種自平衡的樹結構&#xff0c;能夠保持…

python+django 環境搭建以及post接口封裝

1、搭建pythondjango環境 python 3.7.9的版本 具體參考之前的安裝教程 django 使用 pip install django 會自動安裝 檢驗安裝版本&#xff1a; python -m django --version 2、創建django項目 django-admin startproject projectname 啟動項目&#xff1a;python manage.py…

011-GeoGebra基礎篇-驗證泰勒斯定理(動點在指定曲線上移動)

注意咯&#xff0c;如果說前期的文章隨便看看就行&#xff0c;但從這篇往后的內容&#xff0c;則需要君略微動動brain了。當然&#xff0c;后續的文章如果感覺吃力的話&#xff0c;可以看看本專欄序號比較小的文章&#xff0c;可能會對你開卷有益。 若A, B, C是圓周上的三點&am…

Windows PowerShell 添加新配置文件(打開對應的目錄,并執行命令)

%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe ./redis-server.exe %SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe yarn dev 人工智能學習網站 https://chat.xutongbao.top

數據分析如何在企業中發揮價值

數據分析如何在企業中發揮價值 數據分析的目的是什么為什么怎么做做什么 思考問題流程確認問題拆解問題量化分析 分析數據流程收集數據處理數據制作圖表 全流程 數據分析的目的 是什么 通過數據量化企業當前的經營現狀或業務事實&#xff0c;將業務細節轉換為具體數據&#xf…

通過容器啟動QAnything知識庫問答系統

QAnything (Question and Answer based on Anything) 是致力于支持任意格式文件或數據庫的本地知識庫問答系統&#xff0c;可斷網安裝使用。目前已支持格式&#xff1a;PDF(pdf)&#xff0c;Word(docx)&#xff0c;PPT(pptx)&#xff0c;XLS(xlsx)&#xff0c;Markdown(md)&…

LabVIEW汽車轉向器測試系統

紹了一種基于LabVIEW的汽車轉向器測試系統。該系統集成了數據采集、控制和分析功能&#xff0c;能夠對轉向器進行高效、準確的測試。通過LabVIEW平臺&#xff0c;實現了對轉向器性能參數的實時監測和分析&#xff0c;提升了測試效率和數據精度&#xff0c;為汽車轉向器的研發和…

CAM350刪除鋪銅?

CAM350刪除鋪銅&#xff1f; 1、選擇菜單欄Add 2、選擇Polygon Void→Line... 3、然點擊需要操作的銅箔&#xff0c;使其高亮 4、用鼠標框選需要刪除的部分&#xff0c;然后右擊 5、刪除后如下圖所示 The Layer Bar controls are part of the new Navigation Pane and can also…

OpenStack開源虛擬化平臺(二)

目錄 三、對象存儲服務Swift&#xff08;一&#xff09;Swift特性&#xff08;二&#xff09;應用場景&#xff08;三&#xff09;Swift主要組件&#xff08;四&#xff09;Swift基本原理&#xff08;五&#xff09;實例分析 四、鏡像服務Glance&#xff08;一&#xff09;Glan…

JAVA-Redis數據結構—跳躍表(Skiplist)【包含Java實現詳情代碼】

本人詳解 作者:王文峰,參加過 CSDN 2020年度博客之星,《Java王大師王天師》 公眾號:JAVA開發王大師,專注于天道酬勤的 Java 開發問題中國國學、傳統文化和代碼愛好者的程序人生,期待你的關注和支持!本人外號:神秘小峯 山峯 轉載說明:務必注明來源(注明:作者:王文峰…

CAAC無人機執照:視距內駕駛員與超視距駕駛員區別詳解

CAAC無人機執照中的視距內駕駛員與超視距駕駛員在多個方面存在顯著的區別。以下是詳細的對比和解釋&#xff1a; 1. 定義與操作范圍&#xff1a; - 視距內駕駛員&#xff08;駕駛員證&#xff09;&#xff1a;操作無人機時&#xff0c;無人機必須在操控員的視線范圍內&#xff…

數據開源|GigaSpeech 2:三萬小時東南亞多語種語音識別開源數據集發布

“Giga”一詞源于“gigantic”&#xff0c;互聯網上具有海量音頻資源&#xff0c;但語音質量良莠不齊&#xff0c;高質量音頻文本對數據十分稀缺且標注成本高昂&#xff0c;特別是在小語種領域。GigaSpeech 是一個非常成功的英文開源數據集&#xff0c;以 YouTube 和 Podcast 為…

[數據庫原理]關系范式總結(自用)

如有錯誤&#xff0c;歡迎指正&#xff01;&#xff01;&#xff01; 有一些題目我放在pdf里面了

解釋 Java 中的封裝、繼承和多態性,并舉例說明相關概念

在Java編程的世界里&#xff0c;封裝、繼承和多態是面向對象編程&#xff08;OOP&#xff09;的三大基石&#xff0c;它們支撐起整個Java程序設計的骨架&#xff0c;讓代碼更加靈活、可擴展和易于維護。 接下來&#xff0c;我會用一種輕松的方式&#xff0c;并通過一個貼近生活…

“核心期刊論文選題與寫作技巧分享”——郭順利

講師簡介&#xff1a; 郭順利博士&#xff0c;一位擁有管理學博士學位的副教授及碩士生導師&#xff0c;活躍在學術界&#xff0c;同時在多份CSSCI收錄期刊中擔任審稿專家。在近年的學術生涯中&#xff0c;他發表了超過50篇的核心期刊論文&#xff0c;并成功指導研究生在核心期…

充電寶買哪個牌子好?2024年十大口碑最好充電寶推薦

在如今快節奏的生活中&#xff0c;充電寶已然成為我們出行必備的物品之一。然而&#xff0c;面對市場上琳瑯滿目的充電寶品牌和型號&#xff0c;我們常常陷入選擇的困境&#xff1a;充電寶買哪個牌子好&#xff1f;2024 年&#xff0c;充電寶技術不斷革新&#xff0c;新品牌層出…

1、數據庫模型圖、er圖

關系 user和administarators是多對一的關系 user和order是一對多的關系 shipped和order是多對一的關系 order和books是多對多的關系 leavewords和order是一對一的關系 stock和books是一對多的關系 Chens 數據庫表示法——ER圖 Crows Foot數據庫表示法——數據庫模型圖 Navicat表…

python機器人編程——用pytorch實現六軸機械臂的正向和逆向數值解算,及python算法解析

目錄 一、前言二、實現原理2.1正向建模2.2張量化2.3繪制3D動畫及操作UI 三、結論四、python源碼PS.擴展閱讀ps1.六自由度機器人相關文章資源ps2.四軸機器相關文章資源ps3.移動小車相關文章資源 一、前言 前面對六軸&#xff08;或多軸&#xff09;機械臂進行了一些研究&#x…