列表
作用:多个装备,多个爱好,多门课程,多个女朋友等
  定义:[]内可以有多个任意类型的值,逗号分隔
 my_girl_friends=['alex','wupeiqi','yuanhao',4,5] #本质my_girl_friends=list([...])l=list('abc')
  常用操作:
  索引,切片,追加,删除,长度,循环,包含in
例子
列表data=['alex',49,[1900,3,18]],分别取出列表中的名字,年龄,出生的年,月,日赋值给不同的变量 l=[
{'name':'alex','age':84},
{'name':'oldboy','age':73},
{'name':'egon','age':18},
]
l.sort(key=lambda item:item['age'])
print(l) 数字(int,float,complex)
  作用:年纪,等级,薪资,身份证号,qq号等数字相关
    age = 10 # 本质age=int(10)
    salary = 3000.3 # 本质salary=float(3000.3)
  二进制,十进制,八进制,十六进制
  长整形(了解)
    在python2中(python3中没有长整形的概念):      
       >> > num = 2L
       >> > type(num)
       < type
'long' >
  复数(了解)  
       >> > x = 1 - 2j
       >> > x.real
      1.0
       >> > x.img
      -2.0
字符串
  作用:名字,性别
国籍,地址等描述信息
  定义:在单引号\双引号\三引号内,由一串字符组成
    name='egon'
  常用操作:
    移除空白strip
    切分split
    长度len
    索引
    切片
  其他操作(包括常用) strip
name='*wh**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*')) startswith,endswith
name='wh_aa'
print(name.endswith('aa'))
print(name.startswith('wh')) replace
name='wh say: i have one tesla,my name is wh'
print(name.replace('wh','aa',1)) formet的三种玩法
res='{} {} {}'.format('wh',21,'male')
res='{1} {0} {1}'.format('wh',21,'male')
res='{name} {age} {sex}'.format(sex='male',name='wh',age=21) find,rfind,index,rindex,count
name='wh say hello'
print(name.find('0',1,3)) #顾头不顾尾,找不到则返回-1不会报错,找到了则显示索引
print(name.index('e',2,4)) #同上,但是找到会报错
print(name.split('/',1)) #顾头不顾尾,如果不指定范围则查找所有 split
name='root:x:0:0::/root/bin/bash'
print(name.split(':')) #默认分隔符为空格
name='c=/a/b/c/d/.txt' #只想拿到顶级目录
print(name.split('/')1) name='a/b/c'
print(name.rsplit('/',1)) join
tag=''
print(tag.join(['wh','say','hello','wold'])) #可迭代对象是字符串 center,ljust,rjust,zjust
name='wh'
print(name.center(30,'_'))
print(name.ljust(30,'*'))
print(name.rjust(30,'*'))
print(name.zfill(50)) #用0填充 expandtabs (扩充标签)
name='wh\thello'
print(name)
print(name.expandtabs(1)) lower(下) ,upper(上)
name='wh'
print(name.lower())
print(name.upper()) captalize ,swapcase(把大写字母换成小写方法也是转化字符串中字母的大小写),title(标题)
name='wh'
print(name.capitalize())
print(name.swapcase())
msg='wh say hi'
print(msg.title()) isdigt:bytes,unicode
is 数字系列
在python3中
num1=b'4'
num2=u'4'
num3='四'
nim4='IV'
print(num1.isdigit()) True
print(num2.isdigit()) True
print(num3.isdigit()) False
print(nim4.isdigit()) False snumberic (中文数字) unicode(罗马数字)
bytes类型无isnumberic方法
print(num2.isnumberi())
print(num3.isdecimal())
print(nim4.isdecimal()) 三者不能判断浮点数
num5='4.3'
print(num5.isdigit())
print(num5.isdecimal())
print(num5.isnumeric()) ...最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景
如果要判断中文数字或罗马数字,则需要用到isnumeric... is 其他
print('===>')
name='wh 123'
print(name.isalnum())
print(name.istitle()) print(name.isidentifier())
print(name.islower())
print(name.isupper())
print(name.isspace())
print(name.istitle()) 字符串练习题:
1 解除name变量对应的值两边的空格,并输出处理结果
name=' wh '
b=name.strip()
print(b)
2 判断name变量对应的值是否以'al'开头,并输出结果
name='alxe'
if name.startswith(name):
print(name)
else:
print('no')
判断name变量对应的值是否以"X"结尾, 并输出结果

name='alxe'
if name.endswith(name):
print(name)
else:
print('no') 将name变量对应的值中的 “l” 替换为 “p”, 并输出结果
name='alxe'
print(name.replace('l','p')) 将name变量对应的值变大写, 并输出结果

name='alex'
print(name.upper()) upper (转换大写) 将 name 变量对应的值根据 “l” 分割,并输出结果。
name='alex'
print(name.split('l')) 将 name 变量对应的值变小写,并输出结果

name='alex'
print(name.lower()) 请输出 name 变量对应的值的第 2 个字符?
name='alex'
print(name[1]) 请输出 name 变量对应的值的前 3 个字符?
name='alex'
print(name[2]) 请输出 name 变量对应的值的后 2 个字符?

name='alex'
print(name[-2]) 请输出 name 变量对应的值中 “e” 所在索引位置?

name='alex'
print(name.index('e')) 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
name='alex'
print(name[:-1])
05-02 13:06