Python零基础学习系列之四--Python程序设计思想
前面我们把Python环境安装成功,同时也选择了自己合适的IDE工具来开启自己的编程之旅。
那么今天来说说怎么编程,程序设计需要什么步骤,我们应该怎么做才能编写自己的程序。
1-1、程序设计方法:
IPO模式:
- I:input--输入,程序的输入(文件输入、网络输入、用户手工输入、随机数据输入、程序内部参数输入等)
- P:process--处理,程序的主要逻辑(程序对输入进行处理输出产生结果;处理的方法也叫算法)
- O:output--输出,程序的输出(屏幕显示输出、文件输出、网络输出、操作系统内部变量输出等)
1-2、编写程序的步骤:
- 分析问题:分析问题的计算部分
- 确定问题:将计算部分划分为确定的IPO三部分
- 设计算法:完成计算部分的核心处理方法
- 编写程序:实现整个程序
- 调试测试:使程序在各种情况下都能正确运行
- 升级维护:使程序长期正确运行,适应需求的微小变化
1-3、程序实例:
问题:如何利用Python程序进行摄氏度和华氏度的转换
步骤一:分析问题的计算部分
步骤二:确定功能,使用IPO方法进一步分析
输入:华氏或者摄氏温度值、温度标识
处理:温度转化算法
输出:摄氏或者华氏温度值、温度标识
F表示华氏度,C表示摄氏度
步骤三:设计算法
根据华氏和摄氏温度定义,单位刻度对应温度关系转换公式:
C = (F - 32) / 1.8
F = C * 1.8 + 32
步骤四:编写程序
val = input("请输入带有温度表示符号的温度值(例如:32C):")
if val[-1] in ['C', 'c']:
f = 1.8 * float(val[0: -1]) + 32
print("转换后的温度为: %.2fF" % f)
elif val[-1] in ['F', 'f']:
c = (float(val[0: -1]) - 32)/ 1.8
print("转换后的温度为:%.2fC" % c)
else:
print("输入错误,请输入正确的值")
步骤五:调试、运行程序
步骤六:升级维护
(PS:自己写得学习笔记,请勿转载,如果转载请注明出处,谢谢!)
Python零基础学习系列之四--Python程序设计思想的更多相关文章
- Python零基础学习系列之三--Python编辑器选择
上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python ...
- Python零基础学习系列之二--Python介绍及环境搭建
1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像P ...
- Python零基础学习系列之一--初识计算机!
1-1.计算机概念: Computer: 原指专门负责计算的人,后来演变成特指计算设备,译为"计算机" 计算机的概念: 计算机是能够根据一组指令操作数据的机器. A compute ...
- python 零基础学习之路 02-python入门
不知不觉学习python已经两个月了,从一开始不知道如何对print的格式化,到现在可以手撸orm,这期间真的是 一个神奇的过程.为了巩固自己的基础知识,为后面的拓展埋下更好的伏笔,此文当以导师的博客 ...
- python零基础学习开篇
我是某工业大学的一名博士,研究方向是基于人脸的模式识别.很遗憾,毕业后没有继续从事图像处理中模式识别相关研究.多种原因进入了一家国企单位,从事交通方面工作.工作2年中一直迷茫,没有在工作岗位中找到自己 ...
- JavaScript零基础学习系列四
案例分享 对象 具体的东西,在以js的眼光看所有的标签都是标签对象,对象是属性的无序集合. 创建对象有两种方式: 直接量: 构造器:所谓的构造器,其实就是函数,只不过这个函数有些特殊,因为它是用于创建 ...
- JavaScript零基础学习系列一
JavaScript Js分成三大块: ECMAScript:语言本身,是标准,js是它的一个具体实现 BOM:浏览器对象模型 DOM:文档对象模型 ECMAScript有三种具体实现: JavaSc ...
- JavaScript零基础学习系列五
定时器 1.定时器:设定时间,在指定的时间之后执行函数或者是程序 a.反复性定时器:var dingshiqi=Window.setInterval("函数名()",时间n[毫 ...
- JavaScript零基础学习系列三
函数 函数:为了完成某个功能而定义的代码的集体.函数是数据类型,只读的对象:函数也是对象:代码的重用.(JavaScript中) 定义语法:function 函数名(形式参数1,形式参数2--){ / ...
随机推荐
- VUE 监听局部滚动 设置ICON的位置跟随
效果图如下: 目的: 为了让 + 号与 - 号跟随在当前 tr 的前边 第一步: 当tr指针经过时获取tr的相对位置 HTML JS 第二步:给滚动的div元素添加滚动事件获取滚动的高度 最后:设置I ...
- Python 实现flatten功能
from collections import Iterable def flatten(items): for x in items: if isinstance(x, Iterable) and ...
- 在VIM中添加行号的方法
VIM编辑器是可以显示行号的.但是,有时候我们需要在整个代码的行首添加行号.怎么实现呢?实现的方法有很多,这里就介绍我知道的一种吧. 在每行行首添加某个字符串 :%s/^/your_string/ 在 ...
- 进入保护模式(二)——《x86汇编语言:从实模式到保护模式》读书笔记14
首先来段题外话:之前我发现我贴出的代码都没有行号,给讲解带来不便.所以从现在起,我要给代码加上行号.我写博客用的这个插入代码的插件,确实不支持自动插入行号.我真的没有找到什么好方法,无奈之下,只能按照 ...
- JNI注册调用完整过程-安卓4.4
在Android系统中,JNI方法是以C/C++语言来实现的,然后编译在一个so文件里面,以我之前的例子为例Android Studio使用JNI,调用之前要加载到当前应用程序的进程的地址空间中: s ...
- 【c++】iostreeam中的类为何不可以直接定义一个无参对象呢
缘起 #include <iostream> #include <fstream> #include <sstream> using namespace std; ...
- mysql服务器运维简单命令介绍
1.mysql>show processlist; 此处关注查询时间,关注谁锁住了表,谁最多: 2.查看开启的日志 mysql>show global variables like '%l ...
- lintcode 题目记录3
Expression Expand Word Break II Partition Equal Subset Sum Expression Expand 字符串展开问题,按照[]前的数字展开字符 ...
- maven项目在eclipse中debug
作为新手,出现bug后,debug找出bug还是很重要的,能节约大量找bug的时间 1.选中项目,右键点击-->run as -->run configurations 2.在run co ...
- Cocos2d-js 开发记录:基本图形绘制
做着做着想要用基本绘图函数画个矩形,在cocos2d-js 3.0里可以使用DrawNode var dn = new cc.DrawNode(); var ltp = cc.p(0, 32); va ...