day1-02 python程序语法分析
一、概述
- 程序的格式框架
- 命名与保留字
- 数据类型
- 语句与函数
- Python程序的输入输出
二、程序的格式框架
# TempConvert.py
# 输入温度
TempStr = input("请输入带有符号的温度值: ")
if TempStr[-1] in ['F', 'f']:
C = (eval(TempStr[0:-1]) - 32) / 1.8
print(f"转换后的温度是{C:.2f}C")
elif TempStr[-1] in ['C', 'c']:
F = 1.8 * eval(TempStr[0:-1]) + 32
print(f"转换后的温度是{F:.2f}F")
else:
print("输入格式错误")
2.1 代码高亮

代码高亮:编程的色彩辅助体系,不是语法要求
2.2 缩进

缩进:一行代码开始前的空白区域,表达程序的格式框架
- 严格明确:缩进是语法的一部分,缩进不正确程序运行错误
- 所属关系:表达代码间包含和层次关系的唯一手段
- 长度一致:程序内一致即可,一般用4个空格或1个TAB
2.3 注释

注释:用于提高代码可读性的辅助性文字,不被执行,不被程序执行的辅助性说明信息
- 单行注释:以#开头,其后内容为注释
# 这里是单行注释
- 多行注释:以'''or"""开头和结尾
'''
这是多行注释第一行
这是多行注释第二行
'''
2.4 缩进、注释

三、命名与保留字
3.1 变量

变量:程序中用于保存和表示数据的占位符号
- 变量采用标识符(名字) 来表示,关联标识符的过程叫命名,
TempStr是变量名字 - 可以使用等号(=)向变量赋值或修改值,=被称为赋值符号,
TempStr = "82F" # 向变量TempStr赋值"82F"
3.2 命名
命名:关联标识符的过程
- 命名规则: 大小写字母、数字、下划线和汉字等字符及组合,如:
TempStr,Python_Great, 这是门Python好课 - 注意事项: 大小写敏感、首字符不能是数字、不与保留字相同,
Python和python是不同变量,123Python是不合法的
3.3 保留字
保留字:被编程语言内部定义并保留使用的标识符
- Python语言有33个保留字(也叫关键字),如:
if,elif,else,in - 保留字是编程语言的基本单词,大小写敏感,
if是保留字,If是变量

3.4 变量、命名、保留字

四、数据类型
4.1 字符串、整数、浮点数、列表

4.2 10,011,101 该如何解释呢?
这是一个二进制数字 或者 十进制数字
- 作为二进制数字,10,011,101的值是十进制157
这是一段文本 或者 用逗号,分隔的3个数字
- 作为一段文本,逗号是文本中的一部分,一共包含10个字符
4.3 供计算机程序理解的数据形式
程序设计语言不允许存在语法歧义,需要定义数据的形式
- 需要给10,011,101关联一种计算机可以理解的形式
程序设计语言通过一定方式向计算机表达数据的形式
- "123"表示文本字符串123,123则表示数字123
4.4 10,011,101
- 整数类型:10011101
- 字符串类型:"10,011,101"
- 列表类型:[10, 011, 101]
4.5 字符串

字符串:由0个或多个字符组成的有序字符序列
- 字符串由一对单引号或一对双引号表示,"请输入带有符号的温度值: "或者 'C'
- 字符串是字符的有序序列,可以对其中的字符进行索引,"请" 是 "请输入带有符号的温度值: " 的第0个字符
4.5.1 字符串的序号
正向递增序号 和 反向递减序号

4.5.2 字符串的使用
使用[ ]获取字符串中一个或多个字符
- 索引:返回字符串中单个字符
[M]
- "请输入带有符号的温度值: "[0] 或者 TempStr[-1]
- 切片:返回字符串中一段字符子串
[M: N]
- "请输入带有符号的温度值: "[1:3] 或者 TempStr[0:-1]
4.6 数字类型

整数和浮点数都是数字类型
- 整数:数学中的整数,如 32 或者 -89
- 浮点数:数学中的实数,带有小数部分,如 1.8 或者 -1.8 或者 -1.0
4.7 列表类型

列表类型:由0个或多个数据组成的有序序列
列表使用[ ]表示,采用逗号(,)分隔各元素
- ['F','f']表示两个元素'F'和'f'
使用保留字 in 判断一个元素是否在列表中
- TempStr[-1] in ['C','c']判断前者是否与列表中某个元素相同
五、语句与函数
5.1 赋值语句

赋值语句:由赋值符号构成的一行代码
赋值语句用来给变量赋予新的数据值
- C=(eval(TempStr[0:-1])-32)/1.8 # 右侧运算结果赋给变量C
赋值语句右侧的数据类型同时作用于变量
- TempStr=input("") # input()返回一个字符串,TempStr也是字符串
5.2 分支语句

分支语句:由判断条件决定程序运行方向的语句
使用保留字ifelifelse构成条件判断的分支结构
- if TempStr[-1] in ['F','f']: # 如果条件为True则执行冒号后语句
每个保留字所在行最后存在一个冒号(:),语法的一部分
- 冒号及后续缩进用来表示后续语句与条件的所属关系
5.3 函数

函数:根据输入参数产生不同输出的功能过程
- 类似数学中的函数,
y = f(x)
- print("输入格式错误") # 打印输出 "输入格式错误"
函数采用 () 方式使用
- eval(TempStr[0:-1]) # TempStr[0:-1]是
5.4 赋值语句、分支语句、函数

六、Python程序的输入输出
6.1 输入函数 input()

input():从控制台获得用户输入的函数
- input()函数的使用格式: = input()
- 用户输入的信息以字符串类型保存在中:TempStr = input(“请输入”) # TempStr保存用户输入的信息
6.2 输出函数 print()

print():以字符形式向控制台输出结果的函数
- print()函数的基本使用格式:print()
- 字符串类型的一对引号仅在程序内部使用,输出无引号:print("输入格式错误") # 向控制台输出 输入格式错误
- print()函数的格式化:
print("转换后的温度是{:.2f}C".format(C))print(f"转换后的温度是{C:.2f}C")# { }表示槽,后续变量填充到槽中# { :.2f }表示将变量C填充到这个位置时取小数点后2位,如果C的值是 123.456789,则输出结果为:转换后的温度是123.45C
6.3 评估函数 eval()

eval():去掉参数最外侧引号并执行余下语句的函数
- eval()函数的基本使用格式:eval()
eval(TempStr[0:-1])# 如果TempStr[0:-1]值是"12.3",输出是:12.3
6.4 input()、print()、eval()

七、小结
- 缩进、注释、命名、变量、保留字
- 数据类型、字符串、 整数、浮点数、列表
- 赋值语句、分支语句、函数
- input()、print()、eval()、 print()格式化
day1-02 python程序语法分析的更多相关文章
- 周一02.3运行python程序的两种方式
一.运行python程序的两种方式 方法一:交互式: 优点:输入一行代码立刻返回结果 缺点:无法永久保存代码 方法二: ...
- Python网络02 Python服务器进化
原文:Python网络02 Python服务器进化 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! **注意,在Python 3. ...
- 介绍Python程序员常用的IDE和其它开发工具
概述 “工欲善其事,必先利其器”,如果说编程是程序员的手艺,那么IDE就是程序员的吃饭家伙了. IDE 的全称是Integration Development Environment(集成开发环境), ...
- python笔记:#002#第一个python程序
第一个 Python 程序 目标 第一个 HelloPython 程序 Python 2.x 与 3.x 版本简介 执行 Python 程序的三种方式 解释器 -- python / python ...
- 第一个 Python 程序
## 目标 * 第一个 `HelloPython` 程序* `Python 2.x` 与 `3.x` 版本简介* 执行 `Python` 程序的三种方式 * 解释器 —— `python` / ` ...
- Python学习笔记(Ⅰ)——Python程序结构与基础语法
作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...
- Python程序员常用的IDE和其它开发工具
概述 “工欲善其事,必先利其器”,如果说编程是程序员的手艺,那么IDE就是程序员的吃饭家伙了. IDE的全称是Integration Development Environment(集成开发环境),一 ...
- 人生苦短之---第一个Python程序
第一个 Python 程序 目标 第一个 HelloPython 程序 Python 2.x 与 3.x 版本简介 执行 Python 程序的三种方式 解释器 —— python / python ...
- 所有 Python 程序员必须要学会的「日志」记录。
本文字数:3840 字 阅读本文大概需要:10 分钟 写在之前 在我们的现实生活中,「日志记录」其实是一件非常重要的事情,比如银行的转账记录,汽车的行车记录仪记录行驶过程中的一切,如果出现了什么问题, ...
随机推荐
- Kubernetes学习之应用部署变迁
从物理单机.虚拟化(容器化)到云原生 历史 云原生 ---初期 总结
- airflow的安装
1.环境准备1.1 安装环境1.2 创建用户2.安装airflow2.1 安装python2.2 安装pip2.3 安装数据库2.4 安装airflow2.4.1 安装主模块2.4.2 安装数据库模块 ...
- (七十四)c#Winform自定义控件-金字塔图表
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:ht ...
- Python学习-迭代器、生成器
一.迭代器 1. 可迭代对象 我们知道字符串.列表.元组.字典.集合都可以使用for语句进行循环遍历,然后输出每一个元素,这些都是可迭代对象. 检查对象是否是可迭代对象可以用两种方式去判断: (1)使 ...
- FPipe端口转发
目录 0x01 FPipe介绍 0x02 端口转发 0x03 msf正向上线 注: 边界机器 win08 192.168.222.175 内网机器 win7 192.168.222.137 msf机器 ...
- Python+OpenCV竖版古籍文字分割
在做图片文字分割的时候,常用的方法有两种.一种是投影法,适用于排版工整,字间距行间距比较宽裕的图像:还有一种是用OpenCV的轮廓检测,适用于文字不规则排列的图像. 1. 思路 一开始想偷个懒,直接用 ...
- WebGL简易教程(八):三维场景交互
目录 1. 概述 2. 实例 2.1. 重绘刷新 2.2. 鼠标事件调整参数 3. 结果 4. 参考 1. 概述 在上一篇教程<WebGL简易教程(七):绘制一个矩形体>中,通过一个绘制矩 ...
- RocketMQ 源码学习笔记————Producer 是怎么将消息发送至 Broker 的?
目录 RocketMQ 源码学习笔记----Producer 是怎么将消息发送至 Broker 的? 前言 项目结构 rocketmq-client 模块 DefaultMQProducerTest ...
- 快学Scala 第十一课 (类继承)
类继承: class People { } class Emp extends People{ } 和Java一样,final的类不能被继承.final的字段和方法不能被override. 在Scal ...
- EF Core设置字段默认时间
---恢复内容开始--- 在EF的官方文档上只提到了用 Fluent API来设置默认值. 但是我们日常开发中,会把公用字段都写成基类.比如行创建时间 在需要默认时间的字段加上一个特性 [Databa ...