为什么要学习计算机编程?因为“编程是件很有趣的事儿”!
编程很难学吗?掌握方法就很容易!
首先,掌握编程语言的语法,熟悉基本概念和逻辑
其次,结合计算问题思考程序结构,会使用编程套路
最后,参照案例多练习多实践,学会举一反三
实例1 圆面积的计算
IDLE交互式代码
文件式代码
1. r = 25 2. s = 3.1415926 * r * r 3. print(s) 4. print("{:.2f}".format(s))
输出结果
实例2 同切圆绘制
文件式代码
1. import turtle 2. turtle.pensize(2) 3. turtle.circle(10) 4. turtle.circle(40) 5. turtle.circle(80) 6. turtle.circle(160)
执行结果
实例3 五角星绘制
1. from turtle import * 2. color('red', 'red') 3. begin_fill() 4. for i in range(5): 5. fd(200) 6. rt(144) 7. end_fill() 8. done()
虽然暂时看不懂代码是啥意思,但是大受震撼
温度转换
温度刻画的两种不同体系
摄氏度 中国等世界大多数国家使用
以1标准大气压下水的结冰点为0度,沸点为100度,将温度继进行等分刻画
华氏度 美国、英国等国家使用
以1标准大气压下水的结冰点为32度,沸点为212度,将温度进行等分刻画
设计算法
根据华氏和摄氏温度定义,转换公式如下:
C = (F - 32)/ 1.8
F = C * 1.8 + 32
源码:
1. #TempConvert.py 2. TempStr = input("请输入带有符号的温度值:") 3. if TempStr[-1] in ['F', 'f']: 4. C = (eval(TempStr[0:-1]) - 32)/1.8 5. print("转换后的温度是{:.2f}C".format(C)) 6. elif TempStr[-1] in ['C', 'c']: 7. F = 1.8*eval(TempStr[0:-1]) + 32 8. print("转换后的温度是{:.2f}F".format(F)) 9. else: 10. print("输入格式错误")
用英文符号!!! 用英文符号!!!用英文符号!!!
输出结果:
缩进
缩进表达程序的格式框架
- 严格明确 缩进是语法的一部分,缩进不正确,程序运行错误
- 所属关系 表达代码间包含和层次关系的唯一手段
- 长度一致 程序内一致即可,一般用4个空格或1个TAB
并非程序都要使用4个空格或1个TAB,要求在单一程序内,缩进的长度是相同的!
注释
不被程序执行的辅助性说明内容
- 单行注释 以#开头,其后内容为注释
- 多行注释 以'''开头和结尾
命名与保留字
变量:程序中用于保存和表示数据的占位符号
- 变量采用标识符(名字)来表示,关联标识符的过程叫命名
TempStr是变量名字- 可以使用等号(=)向变量赋值或修改值,=被称为赋值符号
TempStr = "85F" #向变量TempStr赋值"85F"
命名:关联标识符的过程
- 命名规则:大小写字母、数字、下划线和汉字等自读及组合
如:TempStr,Python_Great,这是门Python好课- 注意事项:大小写敏感、首字符不能是数字、不与保留字相同
Python和python是不同变量,132Python是不合法的
保留字:被编程语言内部定义并保留使用的标识符
- Python语言有33个保留字(也叫关键字)
if elif else in- 保留字是编程语言的基本单词,大小写敏感
if是保留字,IF是变量
26个标黑色的保留字是在Python基础语法体系中出现的
数据类型
10,011,101
- 整数类型: 10011101
- 字符串类型: "10,011,101"
- 列表类型: [10,011,101]
字符串:由0个或多个字符组成的有序字符序列
- 字符串由一对单引号或一对双引号表示
"请输入带有符号的温度值:" 或者 'C'- 字符串是字符的有序序列,可以对其中的字符进行索引
"请"是"请输入带有符号的温度值:" 的第0个字符
字符串的序号:正向递增序号 和 反向递减序号
字符串的使用:使用[]获取字符串中一个或多个字符
- 索引:返回字符串中单个字符 <字符串>[M]
"请输入带有符号的温度值:"[0] 或者 TempStr[-1]- 切片:返回字符串中一段字符子串 <字符串>[M:N]
"请输入带有符号的温度值:"[1:3] 或者 TempStr[0:-1]
[1:3] 代表 取出其中的第一个和第二个字符,但不到第三个字符
TempStr[0:-1]表示从0开始,但不到字符串的最后一个字符的字符子串,相当于把最后一个字符去掉
列表类型:由0个或多个数据组成的有序序列
- 列表使用[]表示,采用(,)分隔各元素
['f','F']表示两个元素'f'和'F'- 使用保留字in判断一个元素是否在列表中
TempStr[-1] in ['C','c']判断前者是否与列表中某个元素相同 (字符串TempStr最后一个字符是不是大写C或小写c,如果是,结果返回真知true,否则返回false)
语句与函数
Python程序的输入输出
input
eval 评估函数
去掉参数最外侧引号并执行余下语句的函数
实例
eval("1") = 1
eval("1+2") = 3
eval(' "1+2" ') = '1+2'
eval('print("Hello")') = Hello
“温度转换”代码分析
1. #TempConvert.py 2. TempStr = input("请输入带有符号的温度值:") 3. if TempStr[-1] in ['F', 'f']: 4. C = (eval(TempStr[0:-1]) - 32)/1.8 5. print("转换后的温度是{:.2f}C".format(C)) 6. elif TempStr[-1] in ['C', 'c']: 7. F = 1.8*eval(TempStr[0:-1]) + 32 8. print("转换后的温度是{:.2f}F".format(F)) 9. else: 10. print("输入格式错误")
第一行是注释
第二行 由键盘输入的字符串保留在TempStr变量中
第三行 if分支语句 判断用户输入的最后一个字符,用保留字in判断最后一个字符是不是F或f
如果是F或f,就是输入华氏温度值,就进行对应温度转换操作
如果不是F或f,再判断最后一个字符是否是C或c ,执行对应温度转换操作
如果都不成立,就执行else后面的程序
C = (eval(TempStr[0:-1]) - 32)/1.8
第四行程序中的
eval(TempStr[0:-1]评估运算,是取出字符串(除了最后一位),如果输入85F,经过评估运算,变成85,参与后面的运算 即:85-32/1.8