Python2

12.12

tuple(元组)
定义元组的方式是使用小括号()将元组内的元素括起来,tuple中的每一个元素都不可被改变
count()方法用来统计tuple中某个元素出现的次数,例:
  T = (1, 1, 2, 2, 3, 3, 1, 3, 5, 7, 9)
  print(T.count(1)) #3
  print(T.count(5)) #1
  print(T.count(8)) #0
index()方法可以返回指定元素的下标,当一个元素多次重复出现时,则返回第一次出现的下标位置,例:
  T = (1, 1, 2, 2, 3, 3, 1, 3, 5, 7, 9)
  T.index(9) #10
  T.index(1) #0 
  T.index(8) #报错
创建包含一个元素的tuple
  T = (1) #()表示优先计算
  print(T) #1
  T = (1,)

  print(T) #(1,)

可变tuple:数据类型不可替换,组合数据类型不受约束

T = (1, ‘CH’, [3, 4])

L = T[2]

print(L)  #[3, 4]

L[1] = 40

print(L)  #[3, 40]

print(T)  #(1, ‘CH’, [3, 40])

若直接替换list报错

dict(字典)

特点:占用内存大,查找速度快,元素无序,key不可变(list不可作为其key)

每一项包含一个key和一个value,key和value一一对应

d = {'Alice' : 45, 'Bob' : 60, 'Candy' : 75, 'David' : 86, 'Ellena' : 49}

print(d['Bob']) #60

if 'Alice' in d: 

print(d['Alice']) #45

if 'Dodo' in d:

print(d['Dodo']) #无结果

print(d.get('Alice')) #45

print(d.get('Dodo')) #None

更新元素:当key不存在时,往dict中添加对应的key:value元素,
当key存在时,会更新dict,用新的value替换原来的value

d[‘Mimi] = 72 #添加新元素

d[‘Dodo’] = [72, 73] #可以是任意类型

d[‘Mimi’].append(75) #向类型是list的value中添加

删除元素:key不存在报错

d.pop(‘Alice’) #返回值为被删除值

d.popitem() #随机删除,返回值为删除值

del d[‘Alice’] #无返回

del d #清除所有元素

d.clear() #清除所有元素

遍历

for key in d: #遍历所有的key

......

for key, value in d.items(): #遍历dict中所有的元素

......

获取dict中所有的key

for key in d.keys():

获取dict中所有的value

for key in d.values():

set容器

和list相似,但元素不允许重复,元素无顺序

s = set([1, 4, 3, 2, 5, 4, 2, 3, 1])

print(s) #{1, 2, 3, 4, 5}

判断元素

s = set([‘A’,’B’,’C’])

‘A’ in s #True

‘D’ in s #False

添加元素

s = set([‘A’,’B’,’C’])

s.add(‘E’) #单个添加

s.update([‘F’, ’G’]) #多个添加

删除元素

s.remove(‘A’) #若无该元素,则报错

s.discard(‘A’) #若无该元素,不报错

s.clear() #清除所有元素

判断子集或超集

s1 = set([1, 2, 3])

s1 = set([1, 2, 3, 4, 5])

s1.issubset(s2) #Ture,s1是s2的子集

S2.issubset(s1) #Ture,s1是s2的超集

判断是否重合

s1 = set([1, 2, 3])

s1 = set([2, 3, 4, 5])

s1.isdisjoint(s2) #False

 

函数

定义函数

def 函数名(参数):

......

判断参数类型

isinstance(100,int) #True

isinstance(100,str) #False

默认参数

def power(x, n = 2): #x为必须参数,若未传n参数的值,n默认为2

......

可变参数,把可变参数定义为数组

def a(*args):

可变关键字参数,通过关键字的名字key找到对应的参数值

def info(**kwargs):
print('name:{} ,gender:{}'.format(kwargs.get('name'), kwargs.get('gender'))) 
info(name = 'Alice', gender = 'girl')

 

class A:

def __init__(self, a, b):

self.a = a

self.b = b

def c(self):

......

方法__init__()每创建一个实例,自动运行它,形参self必不可少,必须位于其他形参前,让实例能访问类中的属性和方法,每创建实例只需两个形参提供值,self.a = a获取与形参a相关联的值,并将其赋给变量a,称a为属性,还定义了一种方法,只有一个形参self,之后创建的实例都可访问这些方法

上一篇:python2


下一篇:SpringBoot第九篇:整合Spring Data JPA