变量
变量的作用就是保存数据
变量就是在程序中用来保存数据的容器
1.声明变量(定义变量) -假的声明
变量名=值
变量名 -必须是标识符,不能是关键字
规范:遵守PEP8命名规范(名字的所有字母都小写,如果由多个单词组成,单词之间用_隔开 如:student_name)
见名知义(看到名字就知道变量中存的是什么数据)
= -赋值符号
值 -可以是任何有结果的表达式,例如:190, 变量, 10+20,调用函数表达式
变量必须先声明(赋值)在使用
同时声明多个变量,并且赋一样的值。(同时给多个变量赋值)
num1 = num2 = num3 = 10
同时声明多个变量,并且赋不同的值。(注意:变量的个数和值的个数要保持一致)
x, y = 10, 20
给同一个变量赋值,后赋的值会覆盖先赋的值 num1=100,num1=200
同一个变量可以存储不同类型的值
age=input("请输入一个值:")
#age=int(age)
if(age>=18):
print("你已经是一个成年人了")
else:
print("未成年")
2.声明变量和给变量赋值的本质
结论:python中所有的变量,存的都是数据在内存中的地址.内存地址大小一样 用一个变量给另外一个变量赋值,实质是将变量中的地址赋值给另外一个变量使用变量的时候,是使用的变量中地址对应的值
c中声明变量:
int num=10
num=100
python中声明变量:
num=10
list=[1, 2, 3, 4, 5]
a=10
if(a not in list):
print("在里面")
else:
print("不在")
3.变量的三要素:值、地址、类型
值:变量中存的地址对应的值
地址:变量中存储的地址(id)id(变量) -获取变量中的地址
类型:变量中存的地址对应的值的类型
name1='小明'
name2 = name1
print(name1) #使用变量拿到变量中地址对应的值
print(id(name1))
print(id(name2))
print(type(name1))
python中的运算符:数学运算符,比较运算符,逻辑运算符,赋值运算符,位运算符
1.数学运算符:+,-,,/,%,//,*
+:加法运算
-:减法运算
*:乘法运算
/:除法运算
%:取余:获取一个整数的最低的一位或者几位的值 num%(10^n) 判断一个数是否能够被另一个数整除
//:整除,返回一个整数
num=289
print(num//100) #取num百位上的值
**:幂运算
2.比较运算符:>,<,==,!=,>=,<=
所有的比较运算符的运算结果都是布尔值
3.逻辑运算符:and or not
逻辑运算符的运算对象是布尔值,运算符结果也是布尔值
a.and(逻辑与运算)
值1 and 值2:
如果值1和值2的结果都为True,结果才是true,只要有一个是False结果就是false
逻辑与运算相当于生活中的并且,当需要多个条件同时满足,就使用and将多个条件连接在一起
eg:要求成绩大于90并且表现分大于95,才能获得奖学金
grade>90 and score>95
b.or(逻辑或运算)
值1 or 值2: 如果值1和值2中有一个true,就是true,两个都是false,结果才是false
相当于生活中的或者,当需要多个条件中至少有一个条件满足,就用or进行连接
c.not(逻辑非运算)
not 值:如果值是true,结果就是false,如果值是false,结果就是true
用法:对某个条件进行否定
age=21
是否能够进入网吧的条件:年龄不小于十八
print('是否能进入网吧',not age<18)
4.赋值运算符:=,+=,-=,=,/=,%=,//=,*=
所有赋值符号的左边必须是变量;组合的赋值运算符的左边的变量必须已经赋值;
所有的赋值运算符最终都会进行赋值的操作
a.直接赋值,将右边的结果赋给左边的变量
num = 100
b.+=,-=,=,/=,%=,//=,*=
变量 += 值 -->相当于 变量 = 变量 + 值
运算符的优先级
数学运算符>比较运算符>逻辑运算符>赋值运算符
优先级高的先算,如果有括号先算括号里面的
数学运算符中:*>,/,%,//>+,-
5.位运算:&(按位与),|(按位或),^(按位异或),~(按位取反),<<(左移),>>(右移)
位运算是针对二级制中每一位进行的相关操作
a.数字1 & 数字2 ->二进制的每一位进行与运算,运算的时候如果都为1,结果就是1,或者就是0
1 & 1 ->1
1 & 0 ->0
0 & 0 ->0
与的特点:一位上的数,如果和1与,就会保留这一位上的数,如果和0与就会将这一位置0
11010 & 00111=00010
与运算的应用:判断一个数的奇偶性(最优解答)
将数字和1与,如果结果是0,就说明这个数是偶数,如果结果是1,就说明这个数是奇数
print(100 & 1) ->0
print(101 & 1) ->1
b.数字1 | 数字2 ->如果有一位是1结果就是1,两个都是为0结果才是0
1 | 1 ->1
1 | 0 ->1
0 | 0 ->0
c.按位取反
~ 数字 ->将每一位取反(0变1,1变0)
~1=0
~0=1
010->101(补)=100(反)=111
print(~2)
d.按位异或
数字1^数字2 -每一位如果相同就为0,不同为1
用于判断两个值是不是相等
1^1 -0
1^0 -1
0^1 -1
0^0 -0
11 ^ 2
01011 ^ 00010=01001(补码)=9
数字1 << n(位数) ->左移指定的位数就是在二进制的后面加指定个数个0 相当于:数字1 * (2n)
10 << 1 =20
左移一位数字2 左移两位数字4 左移三位数字*8
f.右移
数字1 >> n(位数) 将数字的二进制位向右移动指定的位数(将低位删除指定的位数)
相当于:数字1 // (2**n)
6.什么是字符串(str)
1.字符串是python中一种常用的有序但是不可变的容器类的数据类型,可以同时存储多个字符。属于序列
字面量:使用单引号或者双引号将任意字符括起来,就是字符串常量。
字符:指的就是字符串中的每一个单元。python中只有字符的概念,没有字符类型
2.字符串中的内容
a.普通字符:包含数字字符,字母、普通的符号、
b.转义字符:通过反斜杠将一些字符转换成有特殊功能或者特殊意义的字符
\n -换行
\t -制表符
' -表示一个单引号
" -表示一个双引号
\ -表示一个
注意:一个转义字符代表一个字符
c.阻止转义:在字符串的最前面加r/R,可以阻止转义字符转义
网友评论