列表元祖的一些方法

 

ascii:字母,数字,特殊字符:1个字节,8位 Unicode:16位 两个字节 升级 32 位 四个字节 utf-8:最少一个字节 8位表示。 英文字母 8位 1个字节 欧洲16位,2个字节
中文24位,3个字节
gbk:中文2个字节,英文字母1个字节。

int:bit_lenth()   二进制的位数的长度
bool:True False
str: str --->bool :bool(str): ''--->False
str:
s = 'alexsb'
s1 = s[1]
s2 = s[1:3]
s3 = s[0:] s[:]
s4 = s[0:-1]
s5 = s[0:3:2]
s6 = s[2::-2]

capitalize首字母大写

upper()全大写

lower()全小写
find通过元素找索引,找不到-1
index()通过元素找索引,找不到 报错
swapcase 大小写翻转

replace(old,new,count)
isdigit() 返回bool值
isapha()
isnumpha()
startswith endswith
title 首字母大写
center()居中
strip()lstrip rstrip
split
format 格式化输出
{}
{0}{1}{2}{0}
{name}{age}{hobby} name= age+ hobby


len() 长度
count 计数

for i in 可迭代对象: pass

列表

增删改查

增:

li = [1,'a','b',2,3,'a']
# li.insert(0,55) #按照索引去增加
# print(li)
list.insert(index, obj)
  • index -- 对象 obj 需要插入的索引位置。
  • obj -- 要插入列表中的对象。
 # # li.append('aaa') #增加到最后 # li.append([1,2,3]) #增加到最后 # print(li) # # li.extend(['q,a,w']) #迭代的去增 # li.extend(['q,a,w','aaa']) # li.extend('a') # li.extend('abc') # li.extend('a,b,c') # print(li)
extend挺特别,看一下例子:
li.extend('a,b,c')
最后输出的是:
 ['a', ',', 'b', ',', 'c']

extend如果后面是一个列表,就把列表里面的单个元素加到li里面,
如果是仅仅一个字符串,就把字符串每个字符分开行程一个个单一的元素添加到li。

列表的增

删:

# l1 = li.pop(1) #按照位置去删除,有返回值
# print(l1)

# del li[1:3] #按照位置去删除,也可切片删除没有返回值。
# print(li)

# li.remove('a') #按照元素去删除
# print(li)

# li.clear() #清空列表


改:

#
# li = [1,'a','b',2,3,'a']
# li[1] = 'dfasdfas'
# print(li)
# li[1:3] = ['a','b']
# print(li)

查:

切片去查,或者循环去查

# for i in li:
#     print(i)
# print(li[0:2])

 总结:

 

其他操作

count(数)(方法统计某个元素在列表中出现的次数)。

1 a = ["q","w","q","r","t","y"]
2 print(a.count("q"))

index(方法用于从列表中找出某个值第一个匹配项的索引位置)

1 a = ["q","w","r","t","y"]
2 print(a.index("r"))

sort (方法用于在原位置对列表进行排序)。

 reverse (方法将列表中的元素反向存放)。

1 a = [2,1,3,4,5]
2 a.sort()# 他没有返回值,所以只能打印a
3 print(a)
4 a.reverse()#他也没有返回值,所以只能打印a
5 print(a)

列表的循环

for循环:用户按照顺序循环可迭代对象的内容。

msg = '老男孩python是全国范围内最好的python培训机构'
for item in msg:
    print(item)

li = ['alex','银角','女神','egon','太白']
for i in li:
    print(i)

dic = {'name':'太白','age':18,'sex':'man'}
for k,v in dic.items():
    print(k,v)

enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

li = ['alex','银角','女神','egon','太白']
for i in enumerate(li):
    print(i)
for index,name in enumerate(li,1):
    print(index,name)
for index, name in enumerate(li, 100):  # 起始位置默认是0,可更改
    print(index, name)    

range:指定范围,生成指定数字。

for i in range(1,10):
    print(i)

for i in range(1,10,2):  # 步长
    print(i)

for i in range(10,1,-2): # 反向步长
    print(i)

列表的嵌套

li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]

print(li[1][1])
name = li[0].capitalize()
# print(name)
li[0] = name
li[0] = li[0].capitalize()
li[2] = '苑日天'
print(li[2].replace('','ritian'))
li[2] = li[2].replace('','ritian')
li[3][0] = li[3][0].upper()
print(li)

 

元祖

元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")

#儿子不能改,孙子可能可以改。
tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
print(tu[3])
print(tu[0:4])
for i in tu:
    print(i)
tu[4][3]=tu[4][3].upper()
print(tu)
tu[4].append('sb')
print(tu)

s = 'alex'
s1 = 'sb'.join(s)
print(s1)
列表转化成字符串  list -----> str    join
li = ['taibai','alex','wusir','egon','女神',]
s = '++++'.join(li)
str ----->list   split()
print(s)


range  [1,2,3,4,5,6,.......100........]

for i in range(3,10):
    print(i)
for i in range(10):
    print(i)
for i in range(0,10,3):
    print(i)
for i in range(10,0,-2):
    print(i)
for i in range(10,-1,-2):
    print(i)

li = [1,2,3,5,'alex',[2,3,4,5,'taibai'],'afds']
for i in li:
    if type(i) == list:
        for k in i:
            print(k)
    else:print(i)

for i in range(len(li)):
    if type(li[i]) == list:
        for j in li[i]:
            print(j)
    else:print(li[i])

 



posted @ 2017-12-19 15:12  裙下的小香蕉  阅读(526)  评论(1编辑  收藏  举报