python数据类型基本操作增删改查(全)

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-17 11:30:57

python 基本数据类型

数字
字符串
元组
列表
集合
字典

Number数字类型

python Number数字类型有以下几种:
整数(int):
长整数(long):python3已取消这个
浮点数 (float) :
复数(complex):

增:

直接赋值:a=1

删除对象

del a

操作

1.支持类型操作符比如 ‘>=’
2.支持算术运算符,比如‘+’
3.支持位操作符。比如‘与或’
4.支持数据之间类型的转换
int()
float()

直接读取变量

String字符串数据类型

Python中的字符串用单引号(’)或双引号(")括起来,同时使用反斜杠‘\’转义特殊字符。

增:

直接赋值:a=‘bb’

整块删除,直接删除对象

del a

如果是删除某个字符,只能是重新赋值

字符串不可变,只能重新赋值。以下操作都算重新赋值
1.字符串拼接‘+’
2.字符串重复操作‘*’

(+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数

#!/usr/bin/python3
str = 'Runoob'
print (str * 2)      # 输出字符串两次
print (str + "TEST") # 连接字符串
执行以上程序会输出如下结果:
RunoobRunoob
RunoobTEST

3.去除字符
默认空格

>>> a='  yanjun  '
>>> a.strip()
'yanjun'
  1. 替换字符
>>> a.replace('y','Y')
'  Yanjun  '
  1. 切割字符串
>>> a='yang jiajiang'
>>> (user ,name1)=a.strip('\n').split()
>>> print user
yang

1.直接读取变量

2.获取下标
a[0]
3.字符切片读取
a[0:1]

#!/usr/bin/python3
#常见的切片操作
str = 'Runoob'

print (str)          # 输出字符串  Runoob
print (str[0:-1])    # 输出第一个到倒数第二个的所有字符  Runoo
print (str[0])       # 输出字符串第一个字符  R
print (str[2:5])     # 输出从下标第二个开始到小标第四个的字符,注意不是第二个到第五个。noo,所以如果要取后面的数据,建议使用以下[2:]
print (str[2:])      # 输出从第三个开始的后的所有字符 noob 
print (str[:2])  # 输出第一个到第二个的字符 Ru
  1. 查找字符所在下标
>>> a.find('y')
0

5.成员符号操作
in
not in
6.字符长度
len()

列表数据类型

列表中的元素是可以改变的

给一个变量赋值一样:
a=[]
1.追加元素
append()

>>> a=[]
>>> a.append(123)
>>> print a
[123]
>>> a.append(345)
>>> print a
[123, 345]

2.插入元素
insert(),可以指定下标位置插入数据

>>> a.insert(2,23)
>>> print a
[123, 345, 23]

3.合并列表
a.extend(b)

del a[2] 
a.remove(5)  #删除5的数字,如果是字符串要加双引号
a.pop()   删除最后一个
a = [1, 2, 3, 4, 5, 6]
a[1]=1.5
a=[1, 1.5, 3, 4, 5, 6]

切片查询

a = [1, 2, 3, 4, 5, 6]
print a[:]   取整个列表
print(a[2:-1]) # -1表述倒数第二个
[3, 4, 5]
print(a[2:0]) # 第二个取到全部

print(a[2::2]) # 第隔一个数取值
[3, 5] 

统计

print(a.count(6)) 统计数字为6的个数,如果是字符串要加双引号

排序

a.reverse() 倒序
a.sort() 正序

查找元素所在下标
print a.index(23)

列表元素个数
len()

循环读取列表数据

list1 = [1, 3, 5, 7, 100]
# 通过循环用下标遍历列表元素
for index in range(len(list1)):
    print(list1[index])
# 通过for循环遍历列表元素
for elem in list1:
    print(elem)
# 通过enumerate函数处理列表之后再遍历可以同时获得元素索引和值
for index, elem in enumerate(list1):
    print(index, elem)

元组数据类型

元组是不可以改变的。元组不可变指的是类型以及id,但元组内如果有列表等可变对象,元组的值是可以变的,这个角度说,元组又是可变的。python中所说的可变与不可变全部说的id(内存地址)

定义一个变量就是
a=()

只能删除整体
del a

值不可以改

同列表

字典数据类型

字典是键(key) : 值(value)对集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的,所以不存在数据重复的问题。
注意:python3.6之前字典是无序的,python3.6后(含)中字典变成有序了

a={}
>>> a={}
>>> a['b']=1
>>> print a
{'b': 1}

组成字典:

c=dict.fromkeys([2,3,4],[1,2,{2:'l'}])
print(c)
{2: [1, 2, {2: 'l'}], 3: [1, 2, {2: 'l'}], 4: [1, 2, {2: 'l'}]}
>>> a={'c': 22, 'b': 1, 'd': 33}
>>> del a['c']   #del
>>> print a
{'b': 1, 'd': 33}
>>> a.pop('b') #pop()
1
>>> print a
{'d': 33}

>>> a.clear() #clear()
>>> print a
{}

a[‘b’]=2

update 函数

>>> a={'c': 22, 'b': 1, 'd': 33}
2
>>> A={'c':23,'e':44}
>>> a.update(A)
>>> print a
{'c': 23, 'b': 1, 'e': 44, 'd': 33}

字典key,value互换

方法一:
a_dict = {'a': 1, 'b': 2, 'c': 3}
{value:key for key, value in a_dict.items()}  {1: 'a', 2: 'b', 3: 'c'}
方法二:
a={}
 for k,v in a_dict.iteritems():
 a[v]=k

可使用in或者not in 查找判断

>>> a={'c': 22, 'b': 1, 'd': 33}
>>> print a['c']  #[]读取
22
>>> print a.get('c') #get读取
22
>>> print a.keys()
['c', 'b', 'd']
>>> print a.values()
[22, 1, 33]

循环读取数据

for i in dict:
    print(i,dict[i]) # 记得是[]中括号

集合数据类型

是一个无序不重复元素的序列。
基本功能是进行成员关系测试和删除重复元素。
可以使用大括号({})或者 set()函数创建集合

空集合
必须用 set() 而不是 { },因为 { } 是用来创建一个空字典

a=set()

添加单个数据

>>> a={1,2,'aa','bb'}
>>> a.add('cc')
>>> a.add(3)
>>> print a
set(['aa', 1, 2, 3, 'bb', 'cc'])

添加多个数据
参数可以是列表,元组,字典等

>>> a.update([11,22])
>>> print a
set(['aa', 1, 2, 'bb', 11, 22])

删除重复数据

student = ({'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'})

print(student)   # 输出集合,重复的元素被自动去掉

删除单个数据
a.revove()

不能像列表那样对指定数据做修改。
可以有集合类型操作符,比如交集,并集

由于集合是无序的,不可以通过索引来切片读取集合数据。
只能通过in或者not in 进行遍历查询。

以上数据常用的运算符

常用运算符:

is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!