#coding=utf-8
#-*- coding:utf8 -*-
# 输入变量
name =raw_input()
# 多行打印用''''''
print'''haha
hh
hahahah'''
#list是一种有序的集合,可以随时添加和删除其中的元素。
classmates = ['Michael', 'Bob', 'Tracy']
print classmates
#用len()函数可以获得list元素的个数:
print len(classmates)
#获取索引最后一个元素
print classmates[-1]
#把某个元素替换成别的元素,可以直接赋值给对应的索引位置
classmates[1] ='Sarah'
print classmates
# 元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改
classmates = ('Michael', 'Bob', 'Tracy')
print classmates
# dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储
d = {'Michael':95, 'Bob':75, 'Tracy':85}
# print d['Bob']
# 避免key不存在时报错
# 1.通过in判断 返回 true 或者 false
print 'Bob' in d
# 通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value
# 和list比较,dict有以下几个特点:
# 1.查找和插入的速度极快,不会随着key的增加而增加;
# 2.需要占用大量的内存,内存浪费多。
# 而list相反:
# 1查找和插入的时间随着元素的增加而增加;
# 2占用空间小,浪费内存很少。
# 所以,dict是用空间来换取时间的一种方法
# set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key
s =set([1, 2, 3])
print s
# 重复元素在set中自动被过滤:
s =set([1, 2, 3, 3, 2])
# add(key)方法可以添加元素到set中
s.add(4)
print s
# remove(key)方法可以删除元素
s.remove(4)
print s
# set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作
s1 =set([1, 2, 3])
s2 =set([4, 2, 3])
print s1&s2
print s1|s2
# replace()方法 改变str(pycharm报错?)
a = ['c', 'b', 'a']
print a
b = a.replace('a','A')
print b