Python语法
1. 几个概念
1.1 表达式
- 表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等 以能求得数值的有意义排列方法所得的组合
- 表达式特点:
- 表达式一般仅仅用于计算这些结果,不会对程序产⽣实质性的影响
- 如果在交互模式中输入一个表达式,解释器会⾃动将表达式的结果输出
1.2 语句
- 一个语法上自成体系的单位,它由一个词或句法上有关连的⼀组词构成
- 语句的执行一般会对程序产生一定的影响,在交互模式中不⼀定会输出语句的 执⾏结果
1.3程序(program)
- 程序就是由⼀条⼀条的语句和一条一条的表达式构成的。
1.4函数(function) - 函数就是一种语句,函数专门用来完成特定的功能
- 函数长的形如:xxx()
函数的分类:
- 内置函数 :或者内建函数,就是由语法规定存在的函数,这些函数,包含 在编译器的运行时库中,程序员不⽐单独书写代码实现它,只需要调⽤既 可。
- ⾃定义函数 : 由程序员自主的创建的函数 当我们需要完成某个功能 时,就可以去调用内置函数,或者⾃定义函数
- 函数的2个要素
- 参数
- 返回值
2.标识符
2.1 关键字
- python这些具有特殊功能的标识符,这就是所谓的关键字关键字,是python 已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符
输入 dir (_ builtins _) 按下回车键(Enter)注意:builtins 前后为双下划线。
2.2 标识符概念
- 开发人员在程序中自定义的这些符号和名称。标识符是自己定义的,如变量名 、函数名等
- 组成:由26个英文字母大小写,数字 0-9 符号 $ 标识符的规则: 1.标识符中可以包含字母、数字、, 例如: name1 name_1 、 _name1 , 但是不能使⽤数字开头,例如:1name(不行)
- 2.Python中不能使⽤关键字和保留字来作为标识符
- 命名方式
驼峰命名法
- 小驼峰式命名法: 第一个单词以小写字母开始;第二个单词的大字⺟⼤ 写,例如:myName、aDog
- 大驼峰式命名法: 每一个单字的⾸字⺟都采⽤⼤写字⺟,例如: FirstName、LastName
下划线命名法
- 不过在程序员中还有⼀种命名法⽐较流⾏,就是⽤下划线“_”来连接所有,比如 get_url 、buffer_size
变量
变量的概念
- 变量是计算机内存中的⼀块区域,存储规定范围内的值,值 可以改变,通俗 的说变量就是给数据起个名字。
- 变量命名规则
- 变量名由字⺟、数字、下划线组成要符合标识符的命名规范
- 数字不能开头
- 不能使⽤关键字
- 注意 : 两个对象相等和两个对象是同⼀个对象是两个概念
变量在内存中的原理
原理:变量在内存中就是⼀块特定的存储区域(地址)。
1. 引⽤变量
- 两个引⽤指向同⼀个int数据
1 a = 10
2 b = 10
3 print(id(a), id(b))
结果:地址⼀样
- 两个引⽤指向同⼀个str数据
1 str1 = ‘abcdefg’
2 str2 = ‘abcdefg’
3 print(id(str1), id(str2))
结果:地址⼀样
- 两个引⽤指向同⼀个list数据
1 list1 = [1, 2, 3]
2 list2 = [1, 2, 3]
3 print(id(list1), id(list2))
结果:地址不⼀样
2. 拷⻉
1 list1 = [1, 2, 3]
2 list2 = list1.copy()
3 print(id(list1), id(list2))
结果:地址不⼀样
基本数据类型
- 数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值
整数和⼩数
- 整数 : 所有整数 例如 : a = 1 b = 100 c =999 都是int类型
- 小数常量 : 所有⼩数 例如 a = 1.2 b=6.66 ⽤float类型表示
布尔值和空值
- 布尔: 只有2个值⼀个是True ⼀个是False
- None常量:只有⼀个数值就是None 也就是空值
字符串
什么是字符串
- 字符串是由数字、字⺟、下划线组成的⼀串字符
- 注意单
- 引号或双引号不能混合使⽤
- Python中⽤⼀对双引号或者⼀对单引号包裹的内容就是字符串
转义字符
- 转义字符是⼀种特殊的字符常量。转义字符以反斜线""开头,后跟⼀个或⼏个 字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符
总结
- \t 表示制表符
- \n 表示换⾏符
- \ 表示反斜杠
- \ ‘表示’
- \ ‘’ 表示 ‘’
- \ 转义字符 表示后面的一个字符不在具备特殊的意义,而是表示本来字符或者字母的意思
⻓字符串
- ⻓字符串 ⼜叫做⽂档字符串 我们使⽤
- 三重引号来表示⼀个⻓字符串’‘’ ‘’’ 三重引号可以换⾏,并且会保留字符串中的格式
格式化字符串
第⼀种格式化字符串 拼串
第⼆种格式化字符串 参数传递
第三种格式化字符串占位符
- %s 字符串占位
- %f 浮点数占位
- %d整数占位
第四种格式化字符串 f’{变量}’
第五种str.format ()
字符串的其他操作
- len() 字符串的⻓度
- max() 最⼤值
- min() 最⼩值
- str.split()分割字符串
- str.join()拼接字符串
- str.find()查找字符串
- str.replace() 替换字符串
- str.partition() 把字符串分割为三部分
去空格
- s.strip() 左右两边去空格
- s.lstrip() 去左边空格
- s.rstrip() 去右边空格
字符串⼤⼩写
- s.upper() 全部⼤写
- s.lower() 全部⼩写
- s.isupper() 判断是不是⼤写
- s.islower() 判断是不是⼩写
练习
第一题
方法一:
方法二:
第二题