Python基础
Python语法
1. 几个概念
1.1 表达式
- 表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合
- 表达式特点
• 表达式一般仅仅用于计算一些结果,不会对程序产生实质性的影响
• 如果在交互模式中输入一个表达式,解释器会自动将表达式的结果输出
1.2 语句
- 一个语法上自成体系的单位,它由一个词或句法上有关连的一组词构成
- 语句的执行一般会对程序产生一定的影响,在交互模式中不一定会输出语句的执行结果
- 输入语句和打印语句:
- 判断语句
1.3 程序(program)
- 程序就是按照特定顺序执行的一条一条的语句和一条一条的表达式。
1.4 函数(function)
-
函数就是一种语句,函数专门用来完成特定的功能
-
函数长的形如:def xxx():
-
Debug模式
-
打断点的方式称为调试,用于找到代码错误的点。
-
函数的分类:
• 内置函数 : 或者内建函数,就是由语法规定存在的函数,这些函数,包含在编译器的运行时库中,程序员不比单独书写代码实现它,只需要调用既可。
• 自定义函数 : 由程序员自主的创建的函数 当我们需要完成某个功能时,就可以去调用内置函数,或者自定义函数
-
函数的2个要素
• 参数
• 返回值
2. 标识符
2.1 关键字
- python一些具有特殊功能的标识符,这就是所谓的关键字关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符
2.2 标识符概念
-
开发人员在程序中自定义的一些符号和名称。标识符是自己定义的,如变量名 、函数名等
-
组成:由26个英文字母大小写,数字 0-9 符号 _$
-
标识符的规则:
• 1.标识符中可以包含字母、数字、_,但是不能使用数字开头 例如:name1 name_1 _name1 1name(不行)
• 2.Python中不能使用关键字和保留字来作为标识符(保留字相当于关键字)
-
命名方式
-
驼峰命名法
-
小驼峰式命名法: 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
-
大驼峰式命名法: 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
-
-
下划线命名法
- 不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如 get_url buffer_size
- 不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如 get_url buffer_size
-
变量
变量的概念?
• 变量是计算机内存中的一块区域,存储规定范围内的值,值 可以改变,通俗的说变量就是给数据起个名字。
变量命名规则
• 变量名由字母、数字、下划线组成要符合标识符的命名规范
• 数字不能开头
• 不能使用关键字
注意 : 两个对象相等和两个对象是同一个对象是两个概念
变量可以是多种数据类型,整数,浮点数,布尔值,字符串,列表,字典等。
这种取名方式也可称之为引用。
变量在内存中的原理
判断两个变量是不是同一个,判断的是它们的id是否相等
int整数类型在内存中有固定位置
- 在Pycharm中有固定位置,但在交互模式中由于交互模式内存小,是临时借用的硬盘空间,所以id不同
列表每次生成id都不同,因为列表是拼接而成,组合太多,在内存中无法有固定位置,所以内容相同的列表id也不会相同。
基本数据类型
概念:数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值
整数和小数
-
整数 : 所有整数 例如 : a = 1 b = 100 c =999 都是int类型
-
小数常量 : 所有小数 例如 a = 1.2 b=6.66 用float类型表示
布尔值和空值
-
布尔: 只有2个值一个是True (1)一个是False(0)
-
None常量:只有一个数值就是None 也就是空值
课间
安装pipenv模块,用pipenv shell命令创建虚拟环境
字符串
-
什么是字符串
• 字符串是由数字、字母、下划线组成的一串字符
-
注意
• 单引号或双引号不能混合使用
• Python中用一对双引号或者一对单引号包裹的内容就是字符串
- 相同引号不能嵌套
- 单引号与双引号之间可以相互嵌套
转义字符
- 转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符
- 用来关闭其他字符原来功能的字符
- 总结
\t 表示制表符
\n 表示换行符
\ 表示反斜杠
’ 表示 ’
\ ‘’ 表示 ‘’
r’'表示引号内的字符串中的所有字符全部变成原字符,不具备任何原来的功能。
长字符串
- 长字符串 又叫做文档字符串 我们使用三重引号来表示一个长字符串’’’ ‘’’
- 三重引号可以换行,并且会保留字符串中的格式
- 起到注释的作用
格式化字符串
- 格式化:初始化
- 格式化字符串:将字符串不可改变的属性格式化,然后将他的内容改变。
- 拼串
- 参数的传递
- 占位符
-
%s 字符串占位
-
%f 浮点数占位
-
%d 整数占位
-
- f’’
- format
数据类型分类
可变数据类型:值可以改变
- 在内存中可以创建多个相同值不同id的数据
不可变类型:值不可以改变
- 在内存中唯一存在的值,不可以出现相同值得数据。
课后作业
1.a,b = 6, 8 我想让a=8 b=6我该怎么办?用2种方式实现
- 方法一:
- 方法二:
2. 完成字符串的逆序以及统计
• 设计一个程序,要求只能输入长度低于31的字符串,否则提示用户重新输入
• 打印出字符串长度
• 使用切片逆序打印出字符串
3.3. 要求从键盘输入用户名和密码,校验格式是否符合规则,如果不符合,打印出不符合的原因,并提示重新输入
• 用户名长度6-20,用户名必须以字母开头
• 密码长度至少6位,不能为纯数字,不能有空格