Python学习笔记02

变量的命名规则

首字符只能是字母、下划线
在这里插入图片描述
系统的保留关键字是不能用作变量名

值类型与引用类型

在这里插入图片描述
由上图可以看出,int这种值类型不会随a的变化而改变,列表这种引用类型会随b的变化而改变
在这里插入图片描述
id这个方法可以得到变量在内存中的储存地址

列表的可变与元组的不可变

在这里插入图片描述
由上图可以看到,修改了列表的第一个元素的值,id方法获得的内存地址是没有改变的。
在这里插入图片描述
有上面的代码可以看到,元组和字符串一样,不能修改。
列表有个方法append可以添加元素,元组不能像列表一样用append方法来添加元素。

运算符号

在这里插入图片描述
** 表示开次方
在这里插入图片描述
Python没有++ 、-- 这种自增运算符
在这里插入图片描述
Python里面列表和元组也是可以比较的,比较的规则是从第一个元素和另一个变量的第一个元素对应比较。

在这里插入图片描述
在这里插入图片描述
在int float中 0被认为是False,非0 被认为是true
在str 列表 元组 集合 字典中 ,空的变量被认为是False 非空的变量被认为是true
在这里插入图片描述
在这里插入图片描述
由上面两张图可以看到
当非布尔类型参与逻辑运算的时候符合以下规律
由于and逻辑运算符需要判断and符合两边的变量才可得出结果,且判断顺序是从左到右,且返回结果要能代表最后的布尔结果,所以可以认为and逻辑运算后会倒序输出第一个符合结果的变量!

而or逻辑运算符,当第一个变量为true时,不需要判断第二个变量了,所以直接返回第一个变量,因为第一个变量可以代表这个逻辑运算的结果
在这里插入图片描述
有上图可以看到,成员运算符只对字典里的key操作,不是对value操作
在这里插入图片描述
由上图可以看出is运算符和 比较运算符的== 很类似,都是只有值相等的时候返回true,值不相等的时候返回false,但is 和 == 的区别在哪里呢?
在这里插入图片描述
当a=1 b=1.0的时候,== 和 is返回的结果不相同了,由此可以看出,is比较的不是两个变量的值
在这里插入图片描述
由上图可以看到 is运算符比较的是两个变量的内存地址是否相同,所以is也叫做身份运算符。
==是不会比较内存地址的,只会比较两个变量的值
在这里插入图片描述
由于集合是无序的,所以{1,2,3}和{2,1,3}在 == 这个比较运算符是比较中是一样的,他们的顺序并不影响他们的取值,所以结果才会是true,而is比较的是内存地址,所以返回结果肯定为false。
但由于元组是有序的,所以顺序会影响到他的取值,所以 == 这个比较运算符返回的结果是false,而is返回的还是false。
在这里插入图片描述
判断类型,可以用type方法和类型比较,也可以用isinstance方法比较,推荐后面的这种方法。
而且isinstance这个方法的第二个参数,可以传一个元组进去,表示只要变量a是元组里面的类型中的其中一种,就会返回结果true。

位运算符

在这里插入图片描述
在这里插入图片描述
按位与运算,比较的是二进制的数,如果两个数都为1,则返回1,如果两个数其中一个为0,则返回零,2的二进制数为10,3的二进制数为11,他们进行与运算,得到的结果为10,10转换成10进制就是2.
在这里插入图片描述
按位或运算,和与运算不同,他只有满足其中一个数为1,就会返回1,所以会返回11,11转换成10进制为3.
在这里插入图片描述

表达式的优先级

在这里插入图片描述
a or b and c 的优先级是先运算and再运算or的
在这里插入图片描述
not > and > or
在这里插入图片描述
Python可以用 pycharm vscode sublime 这三种IDE(集成开发环境)来开发,类似C# 用VS这种编程软件一样的

流程控制语句之条件控制

在这里插入图片描述
if else的语句是这么写的
在这里插入图片描述
在VScode里面 input可以在命令行接收用户的输入,类似C#控制台程序中的Console.ReadLine();

accou = "liuyuan"
password = '123456'
print('Please input account')
user_account = input()
print('Please input password')
user_password = input()
if account == user_account and password == user_password:
	print('success')
else:
	print('fail')

上面这些代码就是一些简单的if else的语句的一些运用,接收用户输入账号密码的代码。
在这里插入图片描述
Python中的常量只是形式意义上的一个常量,因为Python并没有任何手段来阻止你修改常量的值,并且常量的一些书写规范要全部大写字母
在Python中,一个脚本文件就叫一个模块,一般Pylint的规范都要我们在前面加上一个模块的文档,在常量上面那一段注释掉的字符串就是对这个模块的一个说明文档。
在这里插入图片描述
pass是空语句、占位语句
在这里插入图片描述
在这里插入图片描述
上面两张图可以看到 if else有两种写法,elif 是把 else 和 下级代码块的 if 结合到一起了,大大简化了代码的简洁性

While循环

在这里插入图片描述
while循环还可以配合else来使用

for循环

在这里插入图片描述
print函数里面可以加一个参数,end可以是给一个空字符串,就会在同一行打印出来,不给这个参数的话一般默认是换行字符
在这里插入图片描述
for循环也是可以结合else来使用,会在循环体结束循环的时候来执行else代码块。
在这里插入图片描述
在这里插入图片描述
跳出循环用break或者continue
在这里插入图片描述
用break强制跳出循环,for else语句不会被执行
用continue强制跳出循环,for else语句会被执行
在这里插入图片描述
在Python里面也有像其他语言里面的for(i=0;i<10;i++)这样的固定次数的循环
就是通过range来生成一个0到10的一个序列,来给for in循环体使用
range函数并不会包含10,只会包含0到9
在这里插入图片描述
给range(0,10)加多一个参数,2表示步长,得到一个等差数列
在这里插入图片描述
如果需要倒序遍历,把第三个参数改成负数就可以了,上图就是一个例子
在这里插入图片描述
切片操作同样可以使用第三个参数来实现间隔步长的操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值