第一章 python基本语法元素
1.1计算机与程序设计
1.1.1 计算机的概念
功能性 可编程性
1.1.2 计算机的发展
参照摩尔定律,表现为指数方式
1.1.3 程序设计
亦称编程,是计算机可编程的体现
程序设计语言是一种用于交互的人造语言,程序设计的具体实现方式
1.1.4 编译和解释
编程语言的执行方式 -源代码 –目标代码
编译:将源代码一次性转换成目标代码的过程(一次性翻译,之后不再需要源代码)
解释:将源代码逐条转换成目标代码同时逐条运行的过程(每次程序运行时随翻译随执行)
1.1.5静态语言和脚本语言
根据执行方式不同,编程语言分为两类
-静态语言 使用编译执行的编程语言(C/C++,Java)编译器一次性生成目标代码,优化更充分
-脚本语言 使用解释执行的编程语言(Python,PHP)执行程序时需要原代码,维护更灵活
1.1.6 程序的基本编写方法
IPO
-I Input输入
-P Process 处理
-O Output 输出
1.1.7 编程解决问题的步骤
-确定IPO:明确计算部分及功能边界
-编写程序:将计算求解的设计变成现实
-调试程序:确保程序逻辑能够正确运行
1.2 python开发环境配置
1.2.1 Python语言概述
Python 译为“蟒蛇”,python语言所有者是Python Software Foundation(PSF)
Python语言设计者Guido
Python名称来源于电视剧Monty Python
Python语言是一个由编程牛人领导设计并开发的编程语言
Python语言是一个有开放、开源精神的编程语言
1.2.2 Python的两种编程方式
交互式和文件式
-交互式 对每个输入语句即时运行结果,适合语法练习
-文件式 批量执行一组语句并运行结果,编程的主要方式
1.2.3 简例1:圆面积的计算
交互式
>>> r = 25
>>> area = 3.1415 * r * r
>>> print(area)
1963.4375000000002
>>> print("{:.2f}".format(area))
1963.44
文件式
r = 25
area = 3.1415 * r * r
print(area)
print("{:.2f}".format(area))
输出结果如下:
1963.4375000000002
1963.44
简例2:绘制多个同切圆
交互式:
>>> import turtle
>>> turtle.pensize(2)
>>> turtle.circle(10)
>>> turtle.circle(30)
>>> turtle.circle(60)
文件式同
简例3:五角星绘制
交互式:
>>> from turtle import*
>>> color(‘red’,‘red’)
>>> begin_fill()
>>> for i in range(5):
(200)
(144)
>>> end_fill()
文件式:
from turtle import*
color(‘red’,‘red’)
begin_fill()
for i in range(5):
(200)
(144)
end_fill()
done()
1.3 实例1:温度转换 摄氏度与华氏度间的转换
设摄氏度为C,华氏度为F
标识放在温度最后,82F表示华氏82度
转换公式:
C = (F – 32) / 1.8
F = C * 1.8 + 32
代码如下
#TempConvent.py TempStr = input(“请输入带有符号的温度值:”)
if TempStr[-1] in [‘F’,‘f’]:
C = (eval(TempStr[0:-1]) - 32)/1.8
print(“转换后的温度是{:.2f}C”.format©)
elif TempStr[-1] in [‘C’,‘c’]:
F = 1.8*eval(TempStr[0:-1]) + 32
print(“转换后的温度是{:.2f}F”.format(F))
else:
print(“输入格式错误”)
1.4 程序的格式框架
缩进:一行代码开始前的空白区域,表达程序的格式框架
注释:用于提高代码可读性的辅助性文字,不被执行
- 单行注释:以#开头,其后内容为注释 # 这里是单行注释
- 多行注释:以’’‘开头和结尾
‘’’ 这是多行注释第一行
这是多行注释第二行 ‘’’
变量:程序中用于保存和表示数据的占位符号
- 变量采用标识符(名字) 来表示,关联标识符的过程叫命名
TempStr是变量名字 - 可以使用等号(=)向变量赋值或修改值,=被称为赋值符号
TempStr = “82F” #向变量TempStr赋值"82F"
命名:关联标识符的过程
- 命名规则: 大小写字母、数字、下划线和汉字等字符及组合
如: TempStr, Python_Great, 这是门Python好课 - 注意事项: 大小写敏感、首字符不能是数字、不与保留字相同
Python和python是不同变量,123Python是不合法的
保留字:被编程语言内部定义并保留使用的标识符
- Python语言有33个保留字(也叫关键字) if, elif, else, in
- 保留字是编程语言的基本单词,大小写敏感 if 是保留字,If 是变量
数据类型:供计算机程序理解的数据形式
10,011,101 - 整数类型: 10011101
- 字符串类型: “10,011,101”
- 列表类型: [10, 011, 101]
字符串:由0个或多个字符组成的有序字符序列
字符串由一对单引号或一对双引号表示 "请输入带有符号的温度值: "或者 ‘C’
- 字符串是字符的有序序列,可以对其中的字符进行索引 “请” 是 "请输入带有符号的温度值: " 的第0个字符
字符串的序号:正向递增序号 和 反向递减序号
反向递减序号
-12-11-10-9-8 -7 -6 -5 -4 -3 -2 -1
<——————————————
请 输 入 带 有 符 号 的 温 度 值 :
———————————————>
正向递增序号
0 1 2 3 4 5 6 7 8 9 10 11
字符串的使用:使用[ ]获取字符串中一个或多个字符
- 索引:返回字符串中单个字符 <字符串>[M]
"请输入带有符号的温度值: "[0] 或者 TempStr[-1] - 切片:返回字符串中一段字符子串 <字符串>[M: N]
"请输入带有符号的温度值: "[1:3] 或者 TempStr[0:-1]
数字类型:整数和浮点数
列表类型:由0个或多个数据组成的有序序列
列表使用[ ]表示,采用逗号(,)分隔各元素
[‘F’,‘f’]表示两个元素’F’和’f’
使用保留字 in 判断一个元素是否在列表中
TempStr[-1] in [‘C’,‘c’]判断前者是否与列表中某个元素相同
赋值语句:由赋值符号构成的一行代码
赋值语句用来给变量赋予新的数据值
C=(eval(TempStr[0:-1])-32)/1.8 #右侧运算结果赋给变量C
赋值语句右侧的数据类型同时作用于变量
TempStr=input("") #input()返回一个字符串,TempStr也是字符串
分支语句:由判断条件决定程序运行方向的语句
- 使用保留字if elif else构成条件判断的分支结构
if TempStr[-1] in [‘F’,‘f’]:#如果条件为True则执行冒号后语句 - 每个保留字所在行最后存在一个冒号(:),语法的一部分
冒号及后续缩进用来表示后续语句与条件的所属关系
函数:根据输入参数产生不同输出的功能过程
- 函数采用 <函数名>(<参数>) 方式使用
eval(TempStr[0:-1]) # TempStr[0:-1]是参数
input():从控制台获得用户输入的函数
<变量> = input(<提示信息字符串>)
TempStr = input(“请输入”) # TempStr保存用户输入的信息
print():以字符形式向控制台输出结果的函数
- print()函数的格式化: print(“转换后的温度是{:.2f}C”.format©)
{ }表示槽,后续变量填充到槽中
{ :.2f }表示将变量C填充到这个位置时取小数点后2位
eval():去掉参数最外侧引号并执行余下语句的函数
- eval()函数的基本使用格式: eval(<字符串或字符串变量>)
• >>> eval(“1”)
1
>>> eval(“1+2”)
3
>>> eval(’“1+2”’)
‘1+2’
>>> eval(‘print(“Hello”)’)
Hello
————本文整理自《Python语言程序设计》
嵩天
北京理工大学