比尔云BierYun--阿里云最新优惠活动
阿里云优惠码丨阿里云代金券

python 2.7 数据结构: 基础面试总结

python 2.7 数据结构: 基础面试总结

python中基础的数据类型包括:

1 Number(数字)

2 String(字符串)

3 List(列表)

4 Tuple(元组)

5 set(集合)

6 Pictionary(字典)

按照可变数据和不可变数据来区分:

不可变数据(3个):Number(数字),String(字符串),Tuple(元组)
可变数据(3个):List(列表),Dictonary(字典),set(集合)

创建方式:

创建列表: listT=[1,2,3,4,5]

创建元组:tup2=(1,2,3,4,5)

创建字典:dict2={“abc”:123,”def”:789}

创建集合:student={‘Tom’,’Jim’,’Mary’}

列表:列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)【插入数据可重复,数据不唯一】

listT=[1,"2",(3,4,5,6),[7,8,9],{"10":11},{12,13,14}]    #列表可以存储数据类型:数字,字符,元组,列表,字典,set 
print listT #得:[1, '2', (3, 4, 5, 6), [7, 8, 9], {'10': 11}, set([12, 13, 14])]

元组:元组(tuple)与列表类似,元组不能二次赋值。【元组本身是只读对象,如果元组中的对象是可变类型数据,可变类型数据依然可以修改】

复制代码
tuple=(1,"2",(3,4,5,6),[7,8,9],{"10":11},{12,13,14})    #元组可以存储数据类型:数字,字符,元组,列表,字典,set
print tuple
print tuple[0]
print tuple[3]
tuple[3][0]=77
print tuple[3]
一下为输出测试结果:

#(1, ‘2’, (3, 4, 5, 6), [7, 8, 9], {’10’: 11}, set([12, 13, 14]))
# 1
#[7, 8, 9]
#[77, 8, 9]

复制代码

字典:列表是有序的对象集合,字典是无序的对象集合【键必须是唯一的,但值则不必;值可以取任何数据类型,但键必须是不可变的】

dict2={1:1,"2":"2",(3):(3)}
print dict2   #得 {3: 3, 1: 1, '2': '2'} 元组类型发生了改变
dict2={1:1,"2":"2",(3,2):(3,2)}
print dict2  #{1: 1, (3, 2): (3, 2), '2': '2'} 元组未发生改变
dict2={1:1,"2":"2",(3,2):(3,2),4:[5],"5":{"66":"66"},(3):{"77","88"}}  #键必须是不可变的,值可以是任何类型:依次为数字,字符,元组,列表,字典,set集合
print dict2 #得 {1: 1, (3, 2): (3, 2), 3: set(['77', '88']), 4: [5], '2': '2', '5': {'66': '66'}}

集合:set是一个无序的不重复元素序列

复制代码
set={1,"2",(3,2)}
print set  # 得:set([1, (3, 2), '2']) ;看到数据结构后着实让人发现原来set集合内部结构也是一个列表。这就不难理解为啥可以用set给list列表去重
set={1,"2",(3,2)}      #集合只能存放不可变类型,可变类型放入后会报错
print set
list=[4,5,6]
dict2={"9":"10"}
set={6,7,8}
#set.add(list)   #TypeError: unhashable type: 'list'
#set.add(dict2)  #TypeError: unhashable type: 'dict'
#set.add(set)     #TypeError: unhashable type: 'set'
复制代码

 

面试常问问题:

1  list列表可以存储的类型结构:数字,字符串,元组,列表,字典,set

2  tuple元组可以存储数据类型:数字,字符,元组,列表,字典,set

3  dict字典可以存储数据类型:分别说:键(不可变),值(数字,字符,元组,列表,字典,set集合)

4  set集合可以存储数据类型:不可变类型(数字,字符,元组)

原文地址https://www.cnblogs.com/renguiyouzhi/p/10476060.html

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

强烈推荐

高性能SSD云服务器ECS抗攻击,高可用云数据库RDS