一.python环境的安装


二. python的数据类型

数据类型分为:树值类型、字符串类型、列表类型、元组类型、字典类型、集合类型

2.1 数值类型

数值类型又可以进行细分:可以分

1. 整形(关键字int)由0-9组成的所有数字,例如:年龄、存款、尺寸、手机号等。

2. 浮点类型(关键字float)包含有小数点,例如:价格、重量。

3. 布尔类型(关键字bool)生活通过某种判断得到的真、假。例如:1大于2是假,1大于0是真

4. 复数类型(complex)

复数:就是实数加虚数,表示形式:实数+虚数(i)如a=1+3i

虚数:假设i的平方为-1,那么i就是虚数。

例如:

age = 100  # age为整数
prince = 3.14  # prince为浮点类型
b = True  # b为布尔类型
c = False 
com = 100 + 10j  # com 复数
print(type(age),type(prince),type(b),type(com))

2.2 字符串类型

字符串,其实就是我们生活中的文本信息,例如:姓名、地址、自我介绍。

字符串有一个特点,他必须由引号引起来(单引号、双引号、三引号)

字符串内容中包含由单双引号时,要嵌套使用。关键字:str

例如:

'''
 注意:
1:赋值内容中存在双引号,该如何处理 hello py" th "on
单双嵌套
直接加---》 三引号
2:双引号和三引号到底有啥区别?
三引号可以做多行注释,双引号不可以。
三引号可以保留格式,双引号不可以
3: 特殊字符串的处理
\n  换行
\t 制表符
\r 回车
两种方式去掉字符的功能性
在特殊字符串前面加上一个\
在整个字符串前加上r/R
'''

str1='123'
str2='''Tr'u'e'''
str3 = """10"0+5j"""
str4 = R'hello python\n v208'
print(str1,str2,str3,str4)

3. 运算符

python语言支持一下类型的运算符:算术运算符、比较(关系运算符)、赋值运算符、逻辑运算符、位运算符、成员运算符、身份运算符、运算符优先级。

3.1 算术运算符

'''
python中变量的数据类型是根据赋值来决定的
算术运算符
+,-,*,/,%(取余数,取模),//(整除),**(幂运算)
除法:
python2:除法的结果只会取整数部分
python3:除法的结果会保留小数部分
整除:
整除只会取结果的整数部分
加法:
除了对数值类型进行计算之外,还可以对字符串进行连接操作
不同类型的变量,不可以相加
乘法:
除了对数值类型进行计算之外,还可以对字符串进行多次输出

'''
num1 = 10
num2 = 10
print(num1/num2)  # 结果=3.333333.....
print(num1%num2)  # 结果=1
print(num1//num2)  # 结果=3
print(num1**num2)  # 结果=1000
data = 10
str1 = 'hello'
str2 = 'python'
print(str1,str2)  #逗号的作用是输入多个值
print(str1+str2)  # 加号的作用是连接2个字符串
print(data+str1)  # 类型不同,不可以相加TypeError: unsupported operand type(s) for +: 'int' and 'str'

3.2 比较运算符

比较运算符,一般用于判断、循环。

例如:大于、小于、等于==,不等于!= <>(python3不支持),大于等于,小于等于

比较运算符返回的结果是布尔值:True或者False

python3不支持<>
 

'''
比较运算符,一般用于判断、循环
例如:大于、小于、等于==,不等于!= <>(python3不支持),大于等于,小于等于
结果:True,False
'''
data = 100
boo = True
print(data==True)

3.3 赋值运算符

''' 赋值运算符,用于给变量赋值
例如:=,+=,-=,*=,/=,%=,**=,//=
python不支持a++,a--的赋值方式
'''
x = 6  # 把6赋值给x
y = 1
y += 1  # y=y+1
print(y)
y -= 3
print(y)

3.4 逻辑运算符

'''
逻辑运算符,一般用于判断、循环
例如:and,or,not
逻辑运算符返回的结果是布尔值:True或者False
'''
boo1 = True
boo2 = False
print(boo1 and boo2)  # 两者都为True,结果才为True,否则都是False
print(boo1 or boo2)   # 两者都为False,结果才为False,否则都是True
print(not boo1)

3.5 成员运算符

'''
成员运算符,用来判断指定的内容是否存在变量中,例如:in,not in
成员运算符返还的结果是布尔值,True或者False

注意类型是不可分割的整体,因此不可以对数值类型用in, not in
'''
str1 = 'hello python'
print('hll' in str1)
data = 10
print(1 in data)  # TypeError: argument of type 'int' is not iterable

3.6 运算符的优先级

'''
总结:
1. 算数优先级大于比较运算符
2. 比较运算符优先级大于逻辑运算符
3. 逻辑运算符内部三个优先级 not >and > or
'''

print(1+1 > 2+2)  # 2>4
print(1>2 and 2>3)  # False and False
print(not (1>2)or 2>3 and 10<3) # not False or False and False
# True or False and False
# True or False

三.数据类型转换

'''
数据类型转换
作用:将其他数据类型转为指定的数据类型
数值类型:int ,float, bool、字符串类型
原则:变量上包裹你要转的数据类型的方法就可以了
str()
int()
float()

'''
# int --->str
data = 10
res = str(data)
print(res,type(res))
data = 'hello'
res1 = bool(data) # True:非0值或者非空值转为bool,都是true,0和空值转为bool,都是false
print(res1,type(res1))
# str-->int/float 必须满足一个前提,字符的内容只包含数字的时候才可以
str1 = '123' 
res2 = int(str1)
print(res2,type(res2))

四.变量定义以及声明

'''
变量的赋值方式
变量是一个容器(内存地址),存储数据

方式1:单个变量赋值
id():查看变量的内存地址
内存分配
方式2:连续赋值
方式3: 连续赋值,不同变量的不一样的初始值
注意点:变量的个数要与值的个数一直,否则会报错

'''
# age1 = 18
# age2 = 18
# age3 = 18
# print(age1,age2,age3,id(age1),id(age2),id(age3))

age1=age2=age3=18
print(age1,age2,age3,id(age1),id(age2),id(age3))

name,age,sex = 'kate',18,'女'
print(name,age,sex)
'''
方式4:
多个变量赋值,值的个数比变量的个数多
回收机制,变量的个数少于值的个数,并且不会报错
'''
a,*b,c = 1,2,3,4,5,6,7,8,9
print(a)
print(b)
print(c)
*a1,b1,c1 = 1,2,3,4,5,6,7,8,9
print(a1)
print(b1)
print(c1)