GRIT:perseverance and passion for long-term goals
文章目录
- GRIT:perseverance and passion for long-term goals
- 一. 程序的格式框架
- (1). 缩进:一行代码开始前空白区域,表达程序的格式框架
- (2). 注释:用于提高代码可读性的辅助性文字,不被执行
- 二. 命名与保留字
- (1). 命名:关联标识符的过程
- (2). 保留字:被编程语言内部定义并保留使用的标识符
- 三. 变量与赋值语句
- (1). 变量:程序中用于保存和表示数据的占位符号
- 1. 定义
- 2. 变量的数据类型
- 3. 变量的运算
- 四. 数据类型:供计算机理解的数据形式
- 1. 基本数据类型
- (1). 数字类型及操作
- ①. 整数(int):数学中的整数
- 4种进制表示形式
- ②. 浮点数(float):数学中的实数,带有小数部分
- ③. 复数类型
- 2. 组合数据类型
- (1). 字符串类型及操作
- 1. 定义
- 2. 字符串的序号
- 3. 字符串的使用
- 字符串的索引访问(单个字符访问)
- 字符串的切片访问(字符串区间访问)
- 转义符\
- 4. 字符串处理与操作
- 内置字符串运算符
- 内置字符串处理函数
- 内置字符串处理方法
- (2). 序列类型及操作
- (3). 字典类型及操作
- (4). 集合类型及操作
- 五. 内置的数值操作
- (1). 内置的数值运算操作符
- 1. 算术运算符
- 2. 赋值运算符
- 3. 比较运算符
- 4. 逻辑运算符
- 5. 位运算符
- 6. 成员运算符
- 7. 身份运算符
- 8. 关系运算符
- 9. 运算符优先级
- (2). 内置的数值运算函数
- (3). 类型转换
- 1. 类型自动转换
- 2. 类型强制转换
- 六. 语句与函数
- (1). 赋值语句:由赋值符号构成的一行代码
- 1. 链式赋值语句
- 2. 解包赋值语句
- 七. Python程序的输入输出
- (1). 输入函数input()
- (2). 输出函数print()
- 1. 定义
- 2. print()函数的基本使用格式:
- 3. print()函数的格式化
- 4. 类似于 C/C++ 的printf,Python 的print也能实现格式化输出,方法是使用%操作符,它会将左边的字符串当做格式字符串,将右边的参数代入格式字符串:
- 5. print()函数注意事项
- (3). 评估函数eval()
一. 程序的格式框架
(1). 缩进:一行代码开始前空白区域,表达程序的格式框架
(2). 注释:用于提高代码可读性的辅助性文字,不被执行
二. 命名与保留字
(1). 命名:关联标识符的过程
命名规则:大小写字母、数字、下划线和汉子等字符及组合
注意:大小写敏感,首字符不能是数字、不与保留字相同
(2). 保留字:被编程语言内部定义并保留使用的标识符
Python语言有33个保留字(也叫关键字)
保留字是编程语言的基本单词,大小写敏感
三. 变量与赋值语句
(1). 变量:程序中用于保存和表示数据的占位符号
1. 定义
变量采用标识符来表示,关联标识符的过程叫命名
python中变量是用来标识对象或引用对象的,变量通过变量名访问
可以使用等号=向变量赋值或修改值,=被称为赋值符号
2. 变量的数据类型
python语言是动态类型语言,即变量不需要显式声明数据类型。根据变量的赋值,python语言的解释器会自动确定其数据类型
通过内置的type()函数,可以判断一个对象指向的数据类型
变量动态类型实例:计算机在内存里都做了哪些事情
举例:
原因是:
3. 变量的运算
python是一种强类型语言,只支持该类型允许的运算操作
a指向整数类型对象,b指向字符串类型对象,整数类型数据和字符串类型数据不能直接相加,即字符串类型数据不能自动转换为整数类型数据
四. 数据类型:供计算机理解的数据形式
计算机程序存储和操作的信息通常被称为数据,不同类型的数据以不同的方式存储和操作
1. 基本数据类型
(1). 数字类型及操作
①. 整数(int):数学中的整数
整数类型(int)是表示整数的数据类型。
与其他程序设计语言有精度限制不同,Python语言中的整数位数可以为任意长度(只受限制于计算机内存),可正可负
4种进制表示形式
十进制
二进制
八进制
十六进制
②. 浮点数(float):数学中的实数,带有小数部分
浮点类型是表示实数的数据类型
与其他程序设计语言的双精度(double)和单精度(float)对应
Python语言中的浮点类型数据的精度与系统有关
浮点数的取值范围和小数精度都存在限制,但常规计算可忽略
浮点数可以用科学计数法表示
③. 复数类型
2. 组合数据类型
(1). 字符串类型及操作
1. 定义
由0个或多个字符组成的有序字符序列
Python语言中字符串数据类型可以使用以下4中方式定义
- 单引号(’ ')
- 双引号(" ")
- 三单引号(’’’ ‘’’) :其中可以包含单引号和双引号,可以跨行
- 三双引号(""" “”") :其中可以包含单引号和双引号,可以跨行
注:字符串支持转义字符
2. 字符串的序号
字符串是字符的有序序列,可以对其中的字符进行索引(下标从0开始)
3. 字符串的使用
字符串的索引访问(单个字符访问)
字符串的切片访问(字符串区间访问)
语法格式:[头下标 : 尾下标 : 步长]
s[头下标 : 尾下标]
表示:在字符串s中去索引值从头下标到尾下标(不包括尾下标)的子字符串
s[头下标 : 尾下标 : 步长]
注:正向取字符串时,头下标要小于尾下标
反向取字符串时,头下标要大于尾下标
一般尾下标是取不到的
想要逆序输出字符串,只需要写s[::-1]即可
转义符\
转义符表达特定字符的本意
例如:
转义符形成一些组合,表达一些不可打印的含义
4. 字符串处理与操作
内置字符串运算符
内置字符串处理函数
Python字符串的编码形式:Unicode
因为ASCII编码是针对英语字符设计的,没有覆盖其他语言存在的跟广泛字符
所以现代计算机系统正向一个更大的编码标准Unicode转移
Unicode统一字符编码,覆盖了几乎所有的字符的编码
从0到1114111(0x10FFFF)空间,每个编码对应一个字符
内置字符串处理方法
python语言对字符串对象提供了大量的内置方法用于字符串的检测、替换、排版等操作,使用时需要注意的是,字符串对象是不可变的,所以字符串对象提供的涉及字符串“修改”的方法都是返回修改之后的新字符串,并不对原字符串做任何修改
方法在编程中是一个专有名词
- 方法特指a.b()风格中的函数b()
- 方法本身也是函数,但与a有关,a.b()风格使用
- 字符串及变量也是对象a,存在一些可用方法
(2). 序列类型及操作
(3). 字典类型及操作
(4). 集合类型及操作
五. 内置的数值操作
Python语言中,数据的类型决定了数据可以实现的操作。
Python语言中内置的数值运算操作符和函数支持对数值进行一般数学运算
(1). 内置的数值运算操作符
1. 算术运算符
操作符 | 描述 | 实例 | 结果 | 备注 |
+ | 加法 | 3+4.5 | 7.5 | |
- | 减法 | 12-4.8 | 7.2 | |
* | 乘法 | 2*5.0 | 10.0 | |
/ | 实数除法 | 10/4 | 2.5 | |
// | 整数除法 | 10//4 | 2 | 采用向下取整方式,-10//4=-3 |
% | 取余 | 10%3 | 1 | 操作数可以为实数,3.5%3=0.5 |
** | 幂运算 | 2**3 | 8 | 操作数可以为实数,4.0**0.5=2.0 |
2. 赋值运算符
注:所有的二元运算操作符(+、-、、/、//、%、**)都可以和赋值运算符结合在一起,形成复合赋值运算符(+=、-=、=、/=、//=、%=、**=)
3. 比较运算符
比较运算符,也称关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果这种比较是成立的,则返回 True(真),反之则返回 False(假)。
比较运算符 | 说明 |
> | 大于,如果>前面的值大于后面的值,则返回 True,否则返回 False。 |
< | 小于,如果<前面的值小于后面的值,则返回 True,否则返回 False。 |
== | 等于,如果==两边的值相等,则返回 True,否则返回 False。 |
>= | 大于等于(等价于数学中的 ≥),如果>=前面的值大于或者等于后面的值,则返回 True,否则返回 False。 |
<= | 小于等于(等价于数学中的 ≤),如果<=前面的值小于或者等于后面的值,则返回 True,否则返回 False。 |
!= | 不等于(等价于数学中的 ≠),如果!=两边的值不相等,则返回 True,否则返回 False。 |
is | 判断两个变量所引用的对象是否相同,如果相同则返回 True,否则返回 False。 |
is not | 判断两个变量所引用的对象是否不相同,如果不相同则返回 True,否则返回 False。 |
4. 逻辑运算符
Python 中的逻辑运算符包括如下三种:
and:逻辑与
or:逻辑或
not:逻辑非(取反)
5. 位运算符
Python 中的位运算符包括如下六种:
6. 成员运算符
Python 的成员运算符有以下两种:
7. 身份运算符
Python 的身份运算符有以下两种:
8. 关系运算符
运算符 | 描述 |
== | 等于 |
!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
注:关系运算符可以连用
使用关系运算符的前提是操作符之间必须可以比较大小
9. 运算符优先级
类别 | 类型名 |
** | 指数(最高优先级) |
~ + - | 按位翻转,一元加号和减号(最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法,减法 |
>> << | 右移,左移运算符 |
& | 位 (AND ) |
^ | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= % = /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |
(2). 内置的数值运算函数
函数及使用 | 描述 |
abs(x) | 求x的绝对值 |
divmod(x,y) | 商余,输出(x//y, x%y) |
pow(x, y[, z]) | 幂余,(x**y)%z,[…]表示参数z可省略,当z省略的时候,等价于x的y次幂 |
round(x[, d]) | 四舍五入,d是保留小数位数,默认值为0 |
max(x1,x2, … ,xn) | 求最大值,返回x1,x2, … ,xn中的最大值 |
min(x1,x2, … ,xn) | 求最小值,返回x1,x2, … ,xn中的最小值 |
int(x) | 将x变成整数,舍弃小数部分 |
float(x) | 将x变成浮点数,增加小数部分 |
complex(x) | 将x变成复数,增加虚数部分 |
(3). 类型转换
1. 类型自动转换
int和float对象可以混合运算,如果表达式中包含float对象,则int对象会自动转换成float对象,结果为float对象
在混合运算中,布尔类型(bool)中的True会自动转换为1,False会自动转换成0参与运算
类型间可以进行混合运算,生成结果为最宽的类型
注:数值型数据和字符串无法进行运算
2. 类型强制转换
强制转换类型 | 含义 |
int(x) | 将x变成整数,舍弃小数部分 |
float(x) | 将x变成浮点数,增加小数部分 |
complex(x) | 将x变成复数,增加虚数部分 |
在使用input()函数输入数据的时候,可以使用int和float将字符数据转换成需要的类型
六. 语句与函数
(1). 赋值语句:由赋值符号构成的一行代码
赋值语句用来给变量赋予新的数据值
赋值语句右侧的数据类型同时作用于变量
语法格式:
要访问python的变量之前,必须先绑定某个对象,也就是先赋值,否则会报错
1. 链式赋值语句
链式赋值用于为多个变量同时赋予相同的值
2. 解包赋值语句
Python语言支持将序列数据类型解包为对应相同个数的变量
举例:利用解包赋值语句实现两个变量值的交换
七. Python程序的输入输出
(1). 输入函数input()
- 定义
从控制台获得用户输入的函数 - input()函数的使用格式:
变量 = input(“提示信息字符串”)
用户输入的信息以字符串类型保存在<变量>中 - 运行流程
input()括号内的提示字符串用于提示用户该输入什么样的数据
当Python程序运行到input()函数时,将在屏幕上显示"提示字符串",然后Python程序将暂停并等待用户输入一些文本,输入结束后按Enter键,用户输入的任何内容都会以字符串形式存储 - 想要通过input()函数得到数字
语法格式:
变量 = eval(input(“提示字符串”))
(2). 输出函数print()
1. 定义
以字符形式向控制台输出结果的函数
所有提供的表达式都从左往右求值,结果值也是以从左往右的方式显示在输出行上
2. print()函数的基本使用格式:
print(<拟输出字符串或字符串变量>)
3. print()函数的格式化
format()格式化方法
从Python2.6开始,新增了一种格式化字符串的方法,str.format(),它增强了字符串格式化的功能,通过{}和:来代替之前的%。
format()方法可以有多个输出项,位置可以按指定顺序设置
格式:"…{ }, …{ }".format(…, …) [字符串.format( )]
槽内部的语法格式:
{序号:格式控制标记}.format()
4. 类似于 C/C++ 的printf,Python 的print也能实现格式化输出,方法是使用%操作符,它会将左边的字符串当做格式字符串,将右边的参数代入格式字符串:
如果要带入多个参数,则需要用()包裹代入的多个参数,参数与参数之间用逗号隔开,参数的顺序应该对应格式字符串中的顺序:
5. print()函数注意事项
print()函数会在显示值之间放置一个空格字符
默认情况下,print()函数输出完所有的提供的表达式之后,会自动换行
如果希望print()函数输出完数据后不换行则可以采用如下形式
(3). 评估函数eval()
- 定义
去掉参数最外侧引号并执行余下语句的函数 - eval()函数的基本使用格式:
eval(<字符串或字符串变量>)