第一周:Python编程之基本方法
1.1 课程内容和安排介绍
入门课;
十周;
课程内容:
基本设计方法;1-2
语法;3-6
高级;7-8
有趣的程序设计;9-10
1.2 从计算机到程序设计语言
1.计算机:
计算机:根据指令操作数据;
功能性;
可编程性;
计算机组成:
存储程序结构:冯诺依曼结构
2进制;
事先存储;
外部设备+存储器+CPU;
编好的程序和数据存在主存中;
a+b-c:
执行结束自动停机;
微型计算机:
主机的硬件系统:
1.微处理器是系统的计算核心;对应处理器和运算器;
2.内存和硬盘是存储数据的地方,对应产存储器;
3.各种I/O接口是计算机与外设进行信息交换的“桥梁”对应输入输出设备;
4.以主板为载体的总线将上述部分连接起来;
嵌入式计算机;
超级计算机;
服务器级计算机:
较高性能;
运行一类管理资源并为用户提供7*24服务的计算机软件;
文件服务器,数据库服务器,邮件服务器,域名服务器等一系列功能的主要计算载体;
网络专用计算机:
路由器、防火墙;
工业控制计算机:
传感器结点计算机;
2.程序设计语言:
计算机能够理解和识别操作的一种交互操作;
自然语言的不足:
表达歧义;
文学色彩;
程序设计语言:
机器语言:01代码;
汇编语言:增加人类可读助记符;
高级语言:向自然语言靠近的语言;
编译执行:
将高级语言源代码转换为目标代码(机器语言),程序便可执行;
高级语言源代码->编译器->机器语言目标代码(+输入)->程序执行->输出;
解释执行:
将源代码逐条转化为目标代码同时逐条运行,每次运行程序都需要源代码和解释器;
高级语言(+输入)->解释器->输出;
编译执行,目标代码执行速度快;-静态语言
解释执行,便于维护,可移植;-脚本语言
1.3 Python语言介绍和配置
1.语言介绍
Python译为蟒蛇;拥有与Python Software Foundation,简称PSF,非盈利、致力于促进、保护Python语言的开放、开源和发展的组织;
2000年Python2.0;
2008年Python3.0;
3.0不兼容2.0;
Python是通用语言,解决各种问题;
Python是脚本语言,维护方便;
Python是开源语言;
Python是跨平台语言;
Python是对模型语言,支持面向过程和面向对象;
2.Python开发环境配置
安装:到Python主页下载并安装Python基本开发和运行环境;
http://www.python.org/download/
根据不同操作系统选择不同版本;
Python3.0以上;
启动:
方法1:启动终端,输入python;
方法2:调用IDLE来启动Python的图形化运行环境;
方法3:按照Python语法格式编写代码,编写可以采用任何文本编辑器,保存为文件;
方法4:打开IDLE,点击Commend+N打开一个编辑窗口,输入语句并保存,使用快捷键fn+F5运行即可;
方法5:将python继承到Pycharm等面向较大规模项目开发的集成开发环境;
使用ctrol+R运行;
我们可以使用IDLE进行学习;
或是PyCharm集成开发环境来学习;
1.4 程序设计的基本方法
1.程序的基本编写方法:
IPO模式:
I:Imput 输入,程序的输入;
文件、网络、手工、内部参数输入等;
P:Process 处理,程序的主要处理;
处理方法也叫算法,是程序的灵魂;
O:Output 输出,程序的输出;
文件、屏幕、网络、内部变量输出等;
运算结果;
死循环程序没有输入输出,但他有意义,可以用来测试CPU性能;
大部分实用程序都有IPO;
2.理解问题的计算部分:
指一个待解决问题中,可以用程序辅助完成的部分;
问题的计算特性:
现实问题->抽象出可计算部分->计算特性->IPO;
举例:
华氏温度和摄氏温度的转换;
解决方案很多,不同方案对应不同的计算部分,也就对应着不同的IPO;
程序编写的步骤:
1.分析问题:分析问题的计算部分;
2.确定问题:将计算问题划分为确定的IPO三个部分;
3.设计算法:完成计算部分的核心处理方法;
4.编写程序;
5.调试测试;
6.升级维护;
摄氏度:1标准大气压 0度结冰点 100度沸点;
华氏度:1标准大气压 32度结冰点 212度沸点;
问题:利用python程序进行摄氏度和华氏度的转换;
1.分析问题计算部分;
2.确定功能,使用IPO进一步分析;
输入:华氏温度或摄氏温度;
处理:温度转换算法;
输出:摄氏温度或华氏温度;
1F表示1华氏度;
1C表示1摄氏度;
3.设计算法:
C = (F - 32)/1.8;
F = C*1.8 + 32;
4.编写程序:
(Code1_1-TempConvert)
#1_1-TempConvert.py
# -*- coding: utf-8 -*importstring
val = input("请输入带温度表示符号的温度值(例如:32C或1F):")
print(val)
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("输入有误”)
这段实例程序有问题的,无法运行:
问题出在input函数上;与之类似的还有一个raw_input函数;
两者都能接收字符串,不同的是:
raw_input:可以接收控制台输入的任何类型;
input:则希望读取一个合法的python表达式,即你的输入必须使用“”引号将其括起来;否则回报SyntaxError;
修改为使用raw_input函数或控制太输入字符改用双引号括起来即可;
log:
bogon:untitled huaqiang$ python 1_1-TempConvert.py
请输入带温度表示符号的温度值(例如:32C或1F):32F
32F
转换后的温度为:0.00C
5.调试运行;
6.升级维护;(使用场景输入输出变化等)
所以,程序编写至少需要三个步骤:
1.确定IPO;
2.编写程序;
2.调时程序;
1.5 课后练习
无