# 学习目标:
学习Python从浅入深
学习内容:
1.print()
可输入数字,字符串,运算符号表达,将数据输入到文件中。
2.转义字符
\n newline 换行
\r return 回车
\t tab 水平制表符
\b backspace 退格
3二进制
不管中文还是英文都是字符对应一个数字
4.python中的标识字符和保留字
保留字:有些字符被赋予特殊意义创建.py时候用不了这些字符
标识符:变量、函数、类、模块和其他对象的起的名字就叫标识符
规则:
1字母、数字、下划线_
2.不能以数字开头
3.不能是我的保留字
4.严格按照大小写
变量的定义和使用
1.变量:由三部分组成标识、类型、值
`print('标识',id(name))
print('类型',type(name))
print('值',name)`
2.多次赋值后变量名会指向新的空间
数据类型
1.整数类型(int)
英文为integr简写int,可以表示正数、负数、零
#整数可以表示二进制、八进制、十进制、十六进制
print('十进制',118)
print('二进制',0b10101111) #二进制开头0b开头
print('八进制',0o176) #八进制开头0o
print('十六进制',0x1EAF) #十六进制0x
2.浮点数类型(float)
浮点数由整数部分和小数部分组合
不精准
n1=1.1
n2=2.2
n3=2.1
print(n1+n2)
print(n1+n3)
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))
3.布尔类型(bool)
(1).表示真或假的值
(2).true表示真flase表示假
(3).布尔值可以转化整数
f1=True
f2=False
print(f1,type(f1))
print(f2,type(f2))
#布尔值可以转换为整数
print(f1+1) #2 1+1=2 true表示为1
print(f2+1) #1 0+1=1 false表示为0
4.字符串类型(str)
(1).字符串又被称为不可变得字符序列
(2).可以使用单引号‘’,双引号“”,三引号““ ””,““ ””来定义
(3).单引号和双引号的定义的字符串必须在一行
(4).三引号定义的字符串可以分布在连续的多行
str1='人生苦短,我用PYthon'
str2="人生苦短,我用PYthon"
str3='''人生苦短
我用PYthon'''
str4="""人生苦短
我用PYthon"""
print(str1,type((str1)))
print(str2,type((str2)))
print(str3,type((str3)))
print(str4,type((str4)))
字符串转换
name='张三'
age=20
print(type(name),type(age))#说明name与age的数据类型不同
#print('我叫'+name+'今年'+age+'岁')#当将str类型与int类型进行连接时,报错,解决方案,类型转换
print('我叫'+name+'今年'+str(age)+'岁')#将int类型通过str()函数改变成str类型
print('----------将str()类型转换成str函数------------------')
a=12
b=23
c=False
print(type(a),type(b),type(c))
print(str(a),str(b),str(c),type(str(a)),type(str(b)),type(str(c)))
print('-------------将int()类型转换成int函数---------------')
s1='123'
f1=20.3
s2='90.7'
ff=True
s3='hello'
print(type(s1),type(s2),type(s3),type(f1),type(ff))
print(int(s1),type(int(s1))) # 将str转换成int 字符串为数字串
print(int(f1),type(int(f1))) # 将float转换成int 字符串只截取整数部分,舍掉小数部分
#print(int(s2),type(int(s2))) 将str转换成int 报错 因为字符串为小数串
print(int(ff),type(int(ff))) #将bool转换成int true=1 false=0
#print(int(s3),type(int(s3))) 将str转换成int 字符串必须为数字(整数),非数字串不允许转换
print('-------------float(),将其他类型转换成float()函数----------------')
s1='123.8'
s2='90'
ff=True
s3='hello'
i=98
print(type(s1),type(s2),type(s3),type(ff))
print(float(s1),type(float(s1)))
print(float(s2),type(float(s2)))
print(float(ff),type(float(ff)))
#print(float(s3),type(float(s3))) 字符串中的数据去过是非字符串,则不允许被转换
print(float(i),type(float(i)))
Python 注释
1.单行注释:以#开头
2.多行注释:将一对三引号之间的代码称为多行注释
3.中文注释在文章开头输输编码#coding:gbk
#cobing:gbk
# 开发时间: 2022/4/9 13:57
#输出(单行注释)
print('hello')
'''哈哈哈哈,
我是多行注释'''
Py输入函数input()
作用:接受来自用户的输入
返回值类型:str(),字符串
值的存储:使用=对输入值的存储
persent=input('大圣想要什么礼物呢')
print(persent,type(persentgg))
问题:从键盘输入两个整数输出结果
#从键盘输出两个整数取结果
a=input('请输入一个加数:')
b=input('请输入另一个加数:')
print(type(a),type(b))
a=int(a) #将转换之后的结果存储到int中
b=int(b)
print(a+b,type(a),type(b))
简单一点
a=int(input('请输入一个加数:'))
b=int(input('请输入另一个加数:'))
print(a+b)
Py中的运算符
1.算术运算符
(1)标准算数运算符
加(+)减(-)乘(*)除(/)整除(//)
(2)取余运算符
(%)
(3)幂运算符
(**)
print(1+1) # 加法运算
print(2-1) # 减法运算
print(1*2) # 乘法运算
print(5/2) # 除法运算
print(5//2) # 2 整除运算
print(5%2) # 1 取余运算
print(2**2) # 2的2次方 幂运算
print(2**3) # 2*2*2 2的三次方
print(5/-2) # -3 一正一负的整数公式向下取整
print(9%-4) # -3 公式:余数=被除数-除数*商 9-(-4)*-3=-3
print(-9%4) # 3 -9-4*(-3)
2.赋值运算符
(1)执行顺序:从右到左
(2)支持链式赋值、参数赋值、系列解包赋值
#赋值运算符运算顺序:从右到左
i=3+4
print(i)
print('--------链式赋值-----------')
a=b=c=20
print(a,id(a))
print(b,id(b))
print(c,id(c))
print('-----------参数赋值--------------')
a=20
a+=30 # 相当于a=a+30
print(a)
a-=10 # 相当于a=a-10
print(a)
a*=2 # 相当于a=a*2
print(a)
a/=3
print(a)
print(type(a)) # float
print('---------解包赋值-----------')
a,b,c=20,30,40
print(a,b,c)
#a,b=20,30,40 报错左右不对称
print('---------交换变量的值-----------')
a,b=10,20
print('交换之前:',a,b)
a,b=b,a
print('交换之后:',a,b)
3.比较运算符
(1)>,<,>=,<=,!=
(2)==(对象value比较)
(3)is is not(对象的id比较)
#比较运算符,比较运算符结果为bool
a,b=10,20
print('a>b吗?',a>b) #False
print('a<b吗?',a<b) #True
print('a>=b吗?',a>=b) #False
print('a<=b吗?',a<=b) #True
print('a==b吗?',a==b) #False
print('a!=b吗?',a!=b) #True
'''
= 称作为赋值运算符,==称作为比较运算符
一个对象由三个部分组成分为标识,类型,值
==比较的是值
比较标识的是 is
'''
a,b=10,10
print(a==b) # 说明a.b value 相等---True
print(a is b) #说明a,b id 相等-----True
print(a is not b) #a,b的id不相等----False
lst1=[11,22,33]
lst2=[11,22,33]
print(lst1 == lst2) #value---True
print(lst1 is lst2) #id---False
print(id(lst1))
print(id(lst2))
print(lst1 is not lst2) #True
4.布尔运算符
(1)and,or,not,in,notin
print('------and-----')
a,b=1,2
print('------and-----')
print(a==1 and b==1) # True and True----True
print(a==1 and b!=1) # True and False---False (and 只要有一个错误结果就是False)
print(a!=1 and b!=1) # False and False---False
print('------or---------')
print(a==1 or b==1) # True or True----True
print(a==1 or b!=1) # True or False---True (or 只要有一个正确结果就是True)
print(a!=1 or b!=1) # False or False---False
print('------not 对bool运算取反-------')
t=True
f=False
print(not t) # False
print(not f) # True
print('----------in 和 not in----------------')
s='helloworld'
print('w' in s)
print('k' in s)
print('w' not in s) #False
print('k' not in s) #True
5.位运算符
(1)位和&(与)
对应数都为1,结果为为1
(2)位和|(或)
对应数都为0,结果为0
(3)左移位运算符<<
高位溢出低位补0
(4)右移位运算符>>
低位截断高位补0
print(4&8) # 0 按位与&,同为1时结果为1
print(4|8) # 12 按位或|,同为0时结果为0
print(4<<1) # 向左移动一位相当于×2
print(4<<2) # 向左移动两位相当于×4
print(4>>1) # 向右移动一位相当于÷2
print(4>>2) # 向右移动两位相当于÷4
运算符的优先级
(1)算数运算
**(幂)>*,/,//,%>+,-
(2)位运算
(<<,>>)>&>|
(3)比较运算
<,>,<=,>=,==,!=
(4)布尔运算
and>or
(5)赋值运算
(=)
算数运算>位运算>比较运算>布尔运算>赋值运算
程序的组织结构
1.顺序结构
print('-------程序开始-------')
print('1.打开冰箱')
print('2.把大象装进去')
print('3.关上冰箱')
print('-------程序结束--------')
2.对象的布尔值
python一切皆对象,所有对象都有一个布尔值
获取对象的布尔值
内置函数bool()
以下对象的布尔值为False
False
数值为0
None
空字符串
空列表
空元组
空字典
空集合
3.分支结构
4.pass空语句