# \ 转义引号
print "he isn't a boy!" #return he isn't a boy!
print 'he isn't a boy!' #return invalid syntax
print 'he isn\'t a boy!' #return he isn't a boy!
#字符拼接
print "hello, " + "world!" #return hello, world!
x = "hello, "
y = "world!"
print x + y #return hello, world!
#字符串表示
print repr("he isn't a boy!") #return 'he isn't a boy!'
print str("he isn't a boy!") #return he isn't a boy!
#input与raw_input比较
f = input("Enter the number: ") #Enter the number: 2 或"hello"
print f #2 或hello
t = raw_input("Enter the number: ") #Enter the number: 2 或"hello"
print t #2 或"hello"
# """ """长字符串的表示 或者''' '''
print """this is a
very love
string"""
#return
#this is a
#very love
#string"""
#普通字符跨行
print "this is a \
very love \
string"
#return this is very love string
#原始字符串 r' '
print r'c:\home\python\learning' #return c:\home\python\learning
#索引
f = 'python'
f[0] #'p'
f[-1} #'n'
#分片
numbers = range(10)
print numbers[3:6] #[]3, 4, 5]
#步长取值
numbers[1:7:2] #[1, 3, 5]
#同类型序列相加
t = [1, 2, 3, 4]
f = [5, 6, 7, 8]
print t + f
print 'hello,' + 'world!'
#乘法
print 'python' * 5 #pythonpythonpythonpythonpython
print [42] * 5 #[42, 42, 42, 42, 42]
#检查成员是否在序列内
per = 'python'
print 'py' in per #True
print 'yp' in per #False
#长度、最大、最小值
num = [100, 23, 34, 56, 78]
print len(num) #5
print max(num) #100
print min(num) #23
num = [100, 23, 34, 56, 78]
print list(num) #[100, 23, 34, 56, 78]
print list('python is love') #['p', 'y', 't', 'h', 'o', 'n', ' ', 'i', 's', ' ', 'l', 'o', 'v', 'e']
#元素赋值
num = [100, 23, 34, 56, 78]
num[3] = 120
print num # [100, 23, 34, 120, 78]
#元素删除
del num[0]
print num #[23, 34, 120, 78]
#分片赋值
name = list('huang')
name[3:] = list('debin')
print name #['h', 'u', 'a', 'd', 'e', 'b', 'i', 'n']
name[3:5] = [2, 3, 4]
print name #['h', 'u', 'a', 2, 3, 4, 'b', 'i', 'n']
name[3:3] = [7, 8, 9]
print name #['h', 'u', 'a', 7, 8, 9, 2, 3, 4, 'b', 'i', 'n']
#列表方法
#append 在列表末尾追加新的对象
num = [1, 2, 3, 4, 5]
num.append(6)
print num #[1, 2, 3, 4, 5, 6]
#count 查找某元素在列表中出现的次数
num = [1, 2, 3, 3, 5]
print num.count(3) #2
#列表中一次性追加一个序列的多个值
num1 = [1, 2, 3, 3, 5]
num2 = [102, 100, 101, 99,88]
num1.extend(num2)
print num1 #[1, 2, 3, 3, 5, 102, 100, 101, 99, 88]
#从列表中找到第一个匹配项的索引位置
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
print name.index('pan') #5
#将对象插入到列表中
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.insert(5,'wen')
print name #['huang', 'li', 'dong', 'shun', 'jiang', 'wen', 'pan', 'can', 'chen']
#pop移除列表中的一个元素,并返回此元素
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.pop(5) #pan
print name #['huang', 'li', 'dong', 'shun', 'jiang', 'can', 'chen']
#移除列表中某一个值的第一个匹配项
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.remove('li')
print name #['huang', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
#反转列表
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.reverse()
print name #['chen', 'can', 'pan', 'jiang', 'shun', 'dong', 'li', 'huang']
#列表元素排序
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.sort()
print name #['can', 'chen', 'dong', 'huang', 'jiang', 'li', 'pan', 'shun']
num = [100, 23, 34, 120, 78]
num.sort()
print num #[23, 34, 78, 100, 120]
#cmp高级列表元素排序
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
name.sort(cmp)
print name #['can', 'chen', 'dong', 'huang', 'jiang', 'li', 'pan', 'shun']
num = [100, 23, 34, 120, 78]
num.sort(cmp)
print num #[23, 34, 78, 100, 120]
#元组()
name = ['huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen']
print tuple(name) #('huang', 'li', 'dong', 'shun', 'jiang', 'pan', 'can', 'chen')
num = [100, 23, 34, 120, 78]
print tuple(num) #(100, 23, 34, 120, 78)