day04:数据类型初始2:列表 元祖

一、列表

1、增

append

#添加 append
 li = ['alex', 'wusir', 'egon', 'taibai']
 li.append('日天')
 print(li)

例子

# 往已有的列表添加名字,要停止输入就输入2
while 1:
    username = input('>>>')
    if username.strip().upper() == '2':
        break
    else:
        li.append(username)
print(li)

插入insert

li = ['alex', 'wusir', 'egon', 'taibai']

li.insert(2, 'xiaox') # 往第二个位置插入
print(li)

extend:可迭代的

# extend  可迭代的
li = ['alex', 'wusir', 'egon', 'taibai']
li.extend('one')
print(li)
li.extend([1, 2, 3])
print(li)

2、删

pop

li = ['alex', 'wusir', 'egon', 'taibai']
# name = li.pop(0)  # 返回值
name = li.pop()  # 默认删除最后一个
print(name, li)

按元素去删除:

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

li = ['alex', 'wusir', 'egon', 'taibai']
li.clear()  # 清空
print(li)   

li = ['alex', 'wusir', 'egon', 'taibai']
del li

3、改

li = ['alex', 'wusir', 'egon', 'taibai']

li[0] = '男兽'
li[0] = [1,2,3]
# 切片
li[0:3] = '云姐plfdslkmgdfjglk'
li[0:3] = [1,2,3,'春哥','咸鱼哥']
print(li)

4、查


li = ['alex', 'wusir', 'egon', 'taibai']
for i in li:
    print(i)
print(li[0:2])

5、str与列表的公共方法

l = len(li)
print(l)
num = li.count('taibai')
print(num)
print(li.index('wusir'))

6、排序与反转

  排序:是按照第一个字符的ASCII码的位置去排的。

# 正向排序
li.sort()
print(li)
# 反向排序
li.sort(reverse=True)
print(li)
# #反转
li.reverse()
print(li)

7、列表的嵌套

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)

example:将列表中的子列表的每个元素也打印出来

# 法一
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])

二、元祖

  只读列表,可循环查询,可切片。

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)

三、列表转换为字符串(join)

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

 四、昨日作业讲解

# s = '132a4b5c'
# s1 = s[0]+s[2]+s[1]
# print(s1)
#使用while和for循环分别打印字符串s=’asdfer’中每个元素。
s = 'fkld'
# for i in s:
#     print(i)
# index = 0
# while 1:
#     print(s[index])
#     index += 1
#     if index == len(s):break
#如:content = input(‘请输入内容:’)  # 如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
# content=input('>>>').strip()
# con1=content.split('+')
#li[]
# num=0
# for i in con1:
#     num+=int(i)
# print(num)
# content=input('>>>').strip()
# index = content.find("+")
# a = int(content[0:index])
# b = int(content[index+1:])
# print(a + b)
#咱们任意输入一串文字+数字 统计出来数字的个数

s = input("请输入:")  # '1234324324fdsaf1fdsaf12'
count = 0
for i in s:
    if i.isdigit():
        count += 1
print(count)

 

posted @ 2018-12-15 11:11  pumpkin_J  阅读(98)  评论(0)    收藏  举报