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 分钟 写在之前 在我们的现实生活中,「日志记录」其实是一件非常重要的事情,比如银行的转账记录,汽车的行车记录仪记录行驶过程中的一切,如果出现了什么问题, ...
随机推荐
- Android 正 N 边形圆角头像的实现
卖一下广告,欢迎大家关注我的微信公众号,扫一扫下方二维码或搜索微信号 stormjun94(徐公码字),即可关注. 目前专注于 Android 开发,主要分享 Android开发相关知识和一些相关的优 ...
- 【数据结构与算法】--JavaScript 链表
一.介绍 JavaScript 原生提供了数组类型,但是却没有链表,虽然平常的业务开发中,数组是可以满足基本需求,但是链表在大数据集操作等特定的场景下明显具有优势,那为何 JavaScript 不提供 ...
- windows无法安装到这个磁盘怎样解决,及激活
在cmd输入.sql server 2008 slmgr.vbs -ipk KH2J9-PC326-T44D4-39H6V-TVPBY 这个问题遇到的挺多次的,依稀记得上次搞这个问题搞了很久,今天 ...
- springboot 使用i18n进行国际化
1.i18n介绍 i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称.在资讯领域,国际化(i18n)指让产品(出版物,软件,硬 ...
- springboot2.0+ 使用拦截器导致静态资源被拦截
在spring1.0+的版本中,配置拦截器后是不会拦截静态资源的.其配置如下: @Configuration public class WebMvcConfig extends WebMvcConfi ...
- iSCSI 网关管理 - Storage6
iSCSI网关集成了Ceph存储和iSCSI标准,以提供一个高可用性(HA) iSCSI目标,该目标将RADOS块设备(RBD)映像导出为SCSI磁盘.iSCSI协议允许客户机 (initiator) ...
- navicat for mysql中使用模型?
登录进数据库后,点击模型--新建模型,如下 点击“小手”下面的图标----双击右边的空白处,即出现一个表格,可命名,此时我们命名为A 双击A表下空白处---即可设计A表属性,点确定.如下 同理,生成一 ...
- Java面试----01.JavaSE
1.面向对象和面向过程的区别 面向过程:面向过程性能比面向对象高. 因为类调用时需要实例化,比较消耗资源,所以当性能是最重要的考虑因素时,比如单片机.嵌入式开发.Linux/Unix等一般采用面向对象 ...
- 访问http接口时返回502 Bad Getway什么原因怎么解决
使用 httpclient 工具通过代理服务器请求第三方http 接口,多次返回 502 Bad Getway,少数返回正常. 502 Bad Getway是什么意思? 502 Bad Gateway ...
- GAN算法笔记
本篇文章为Goodfellow提出的GAN算法的开山之作"Generative Adversarial Nets"的学习笔记,若有错误,欢迎留言或私信指正. 1. Introduc ...