Python入门(2)

简单数据类型

  • 整型<class 'int'>
  • 浮点型<class 'float'>
  • 布尔型<class 'bool'>
#除了False就是True
#一般用于条件表达式,也可以用于逻辑运算(与,或,非,异或)
bool1=True
bool2=False
print(bool1,type(bool1))
#True
print(bool2,type(bool2))
#False
print(bool1 & bool2)
#False
print(bool1 and bool2)
#False
print(bool1 | bool2)
#True
print(bool1 or bool2)
#True
print(not bool1)
#False
print(bool1 ^ bool2)#异或,不同于True
#True
  • 字符串<class 'str'>
str1="abc"
print(str1,type(str1))
#abc
#切分
str2="I love you!"
#split按照指定的分隔符进行切割
str3=str2.split(" ")
print(str3,type(str3))
#['I', 'love', 'you!']#可以通过下标索引的方式获得
#获取I
print(str2[0])
#I
#获取love,也可以通过负数索引的方式来获取
print(str2[2:6])#遵循左闭右开原则
#love
str2='I love you!'
#起始位置(默认从开始):结束位置(默认最后一位):步长(多少个元素取一次)
print(str2[::2])
#Ilv o!
#长度
print(len(str2))
#11
#替换
str4=str2.replace("love","hate")
#I hate you!
print(str4)
#反转
print(str4[::-1])
#!uoy etah I
#其他方法
#转换成大写
print(str4.upper())
#I HATE YOU!
  • 空类型<class 'None'>

类型转换

#记住4个方法:int(),float(),str(),bool()
a = "10"
print(a,type(a))
#10
i1=int(a)
print(i1,type(i1))
#10
#int to float
i=20
f1 = float(i)
print(f1,type(f1))
#20.0


#to bool
#对于数值类型的数转bool,除0以外都是True
#对于字符串类型的数转bool,除空字符串以外都是True
print(bool("abc"))
#True
print(bool("True"))
#True
print(bool("False"))
#True
print(bool(""))
#False
print(bool(1))
#True
print(bool(1,))
#True
print(bool(0))
#False
print(bool(-1,))
#True
print(bool(-0,))
#False
print(bool(0,))
#False

容器数据类型

  • 列表<class 'list'>

定义:[elem1,emel2,emel3,...]

特点:元素的类型可以不相同,元素可以不唯一,有序,可变的

list1 = [1,2,3,4,"a",2,3,False]
print(list1,type(list1))
#[1, 2, 3, 4, 'a', 2, 3, False]
#获取列表中的第一个元素,可以通过索引的方式来获取
print(list1[0])
#1
#增
list1.append("TRUE")
print(list1)
#[1, 2, 3, 4, 'a', 2, 3, False, 'TRUE']
list1.insert(1,"abc")
print(list1)
#[1, 'abc', 2, 3, 4, 'a', 2, 3, False, 'TRUE']
#删
list1.remove(1)
print(list1)
#['abc', 2, 3, 4, 'a', 2, 3, False, 'TRUE']
print(list1.pop())  #将最后一个元素去除pop
#TRUE
#改
print(list1)
#['abc', 2, 3, 4, 'a', 2, 3, False]
#重新赋值
list1[3]="egf"
print(list1)
#['abc', 2, 3, 'egf', 'a', 2, 3, False]
#查
print(list1.index(2))  #index方法用于查询列表中的元素,一般是获取第一个元素的索引位置
#1
#其他方法
list2=[1,2,3,4,7,9,8,6,5]
print(list2,type(list2))
#[1, 2, 3, 4, 7, 9, 8, 6, 5]
list2.sort()  #升序排序
print(list2)
#[1, 2, 3, 4, 5, 6, 7, 8, 9]
list2.sort(reverse=True)#降序
print(list2)
#[9, 8, 7, 6, 5, 4, 3, 2, 1]
  • 元组<class 'tuple'>

定义:(elem1,elem2,elem3,...)

特点:元素的类型可以不相同,元素可以不唯一

tumple1=(1,2,3,4,"abc",1,2,True,1.0)
print(tumple1,type(tumple1))
#(1, 2, 3, 4, 'abc', 1, 2, True, 1.0)
#同样也可以通过下标索引获取数据,说明是有序的
print(tumple1[0])
#1
#元组不支持修改元素,所以是不可变的
#注:元组也是可以支持切片的
print(tumple1[0:4:1])
#(1,2,3,4)
print(tumple1[5:8:1])
#(1, 2, True)
print(tumple1.index(3))   #获取元素所在的索引的位置
#2
print(tumple1.count(2))   #获取元素的位置
#2
  • 字典<class 'dict'>

定义:{"k1","v1","k2","v2",...}

特点:元素的value(类型)可以是任意类型,字典中的元素都是k-v格式,k最好不要重复,没有意义

dict1={
    "k1":10,
    "k2":True,
    "k3":1.0,
    "k4":"bbu"
}
print(dict1,type(dict1))
#{'k1': 10, 'k2': True, 'k3': 1.0, 'k4': 'bbu'}
#获取k对应的value
print(dict1["k1"])
#10
#print(dict1["k11"])  #key不存在
print(dict1.get("k11","默认值"))  
#默认值
print(dict1.get("k1","默认值"))  #推荐使用
#10

#修改字典中的值
dict1["k1"]="hello"
print(dict1)
#{'k1': 'hello', 'k2': True, 'k3': 1.0, 'k4': 'bbu'}
#添加元素“k5”:“v5”
dict1["k5"]="v5"
print(dict1)
#{'k1': 'hello', 'k2': True, 'k3': 1.0, 'k4': 'bbu', 'k5': 'v5'}
#删除元素
print(dict1.pop("k5"))
#v5
del dict1["k1"]
print(dict1)
#{'k2': True, 'k3': 1.0, 'k4': 'bbu'}
  • 集合<class 'set'>

定义:{elem1,elem2,elem3,...}

特点:元素是唯一的,会自动去重,无序的,可变的

set1={1,2,3,4,1,2,"abc","hello",True,1.0}
print(set1)
#{1, 2, 3, 4, 'abc', 'hello'}
#不能通过下标获取,证明set是无序的
#删除元素
set1.remove(3)
print(set1)
#{1, 2, 4, 'abc', 'hello'}
#添加元素
set1.add(7)
print(set1)
#{1, 2, 4, 'abc', 7, 'hello'}

#交 并 差
set2={1,2,3,4,5,6}
set3={4,5,6,7,8,9}
​​​​​​​
print(set2 & set3)
#{4,5,6}
print(set2 | set3)
#{1,2,3,4,5,6,7,8,9}
print(set2 - set3)
#{1,2,3}
print(set3 - set2)
#{8,9,7}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值