练习笔记代码
# -*- coding: utf-8 -*-
#tuple 元组(其实就是数组),属于不可变序列,本身不可原位改变,可包含任意类型、嵌套
#需要注意的是,如果只有一个元素,要在后面加一个,号,否则会是一个元素而不是元组
t = (1,)
print(t)
t = 1,2,3#等同于 t=(1,2,3)
print(t)
t = tuple(range(1,6))#类似list
print(t)
print(t[0])#访问下标为1的元素
print(t[0:2])#访问下标为0~2(不包含)的范围
print(t[-1])#最后一个元素
t2 = 'a','b','c'
print(t + t2)#元组相加
print(t * 2)
#tuple能使用序列中的通用操作,比如获取长度、查找索引、最大值、最小值、求总和等等一些不改变本身值的操作
a,b = 5,10#批量赋值
print(a)
print(b)
a,b = b,a#交换数值
print(a)
print(b)
#range 范围,属于不可变序列
for i in range(5):#等于range(0,5,1),0为开始,5为结束(不含),1为步长,默认为1
print("hello " + str(i))
r = range(5)
print(r)
print(r[-1])
#range能使用序列通用操作
#str字符串,也叫文本序列,属于不可变序列
s=''
#print(s)
s='Tom'
print(s)
s="What's your name"
print(s);
#三引号,多行文本
s="""line1
line2
line3
"""
print(s)
s='line1 line2'#转义字符
print(s)
s=r"c:ac"#等同于 s="c:\a\b\c",r(raw)
"""
常用转义符
换行 Tab \ a 响铃 退格 回车 ' " ? 空字符
"""
s="abc" "de" "yz"
print(s)
#s='你好'.encode() #编码,显示16进制字符 2.X不支持
#s=b'xe4xbdxa0xe5xa5xbd'
#print(s.decode()) #解码,显示中文 2.X不支持
#str能使用序列通用操作
#字符串常用操作
s='33'+str(5)#数字类型转换为字符串
print(s)
s='www.test.com'
s='x'+s[1:]#变相替换第1个字符
print(s)
s=s.replace('w','x')#替换字符串,s本身不变,结果字符串赋值给s
print(s)
s=s.replace('x','w',2)#只替换前2个
print(s)
s=s.capitalize()#首字母大写
print(s)
s=s.upper()#全部转为大写
print(s)
s=s.lower()#全部转为小写
print(s)
s='www.test.com'
print(s.startswith("www"))#判断以某字符串开头
print(s.endswith("cn"))#判断以某字符串结尾
print('123'.isdigit())#是否为数字 3.X版本可用 print('123'.isnumeric())
print('123'.isalpha())#是否为字母
l = s.split('.')#拆分
print(l)
print('.'.join(l))#连接
print("a b c".split());#split默认分隔符为空格
name='zs'
age=28
print('1.name:{0},age:{1}'.format(name,age))#format方法,如果参数顺序与值顺序一致,占位符0、1可以省略
print('2.name:{name},age:{age}'.format(name=name,age=age))#format方法
#10为指定占位数,>为右对齐,<为左对齐
print('3.name:{0:>10},age:{1:<10}'.format(name,age))#format方法
#小数格式处理
print('{0:f},{1:.2f},{2:06.2f}'.format(3.1415,3.1415,3.1415))#format方法
#不同进制显示
print('{0:X},{1:o},{2:b}'.format(15,15,15))#format方法