Day 4 python

一. 作业:

  1. 如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。

content = input('请输入内容:').split('+')
num=0
for i in content:
    num += int(i)
print(num)

  2. 任意输入一串文字+数字 统计出来数字的个数。

count = 0
for i in s:
    if i.isdigit():
        count += 1
print(count)

二. 列表:[ ]

  1. 列表的创建:

# 创建一个列表有三种方式:

# 方式一:(常用)
l1 = [1, 2, '彬哥']


# 方式二:(不常用)
l1 = list()  # 空列表
# l1 = list(iterable)  # 可迭代对象
l1 = list('123')
print(l1)  # ['1', '2', '3']

# 方式三:列表推导式
l1 = [i for i in range(1,5)]
print(l1)  # [1, 2, 3, 4]
View Code

  2. 列表的索引切片:

l1 = ['a', 'b', '太白', 3, 666]
print(l1[0])  # 'a'
print(l1[-1])  # 666
print(l1[1:3])  # ['b', '太白']
print(l1[:-1])  # ['a', 'b', '太白', 3]
print(l1[::2])  # ['a', '太白', 666]
print(l1[::-1])  # [666, 3, '太白', 'b', 'a']
View Code

  3. 增:

# append 追加,给列表的最后面追加一个元素
l = [1, 2, 'a']
l.append(666)
print(l) # [1, 2, 'a', 666]

# insert  插入在列表的任意位置插入元素
l = [1, 2, 'a']
l.insert(1,'太白')
print(l) # [1, '太白', 2, 'a']

# extend  迭代着追加,在列表的最后面迭代着追加一组数据
l = [1, 2, 'a']
l.extend('太白a')
print(l)#[1, 2, 'a', '太', '白', 'a']
View Code

   4. 删:

# pop  通过索引删除列表中对应的元素,该方法有返回值,返回值为删除的元素
l = ['太白', 'alex', 'WuSir', '女神']
ret = l.pop(1)
print(ret,l) # alex ['太白', 'WuSir', '女神']

# remove  通过元素删除列表中该元素
l = ['太白', 'alex', 'WuSir', '女神']
l.remove('alex')
print(l) # ['太白', 'WuSir', '女神']

# clear 清空列表
l = ['太白', 'alex', 'WuSir', '女神']
l.clear()
print(l) # []  

# del
#按照索引删除该元素
l = ['太白', 'alex', 'WuSir', '女神']
del l[2]
print(l) # ['太白', 'alex', '女神']

# 切片删除该元素
l = ['太白', 'alex', 'WuSir', '女神']
del l[1:]
print(l) # ['太白']

# 切片(步长)删除该元素
l = ['太白', 'alex', 'WuSir', '女神']
del l[::2]
print(l) # ['alex', '女神']
View Code

  5. 改:

# 按照索引改值
l = ['太白', 'alex', 'WuSir', '女神']
l[0] = '男神'
print(l) # ['男神', 'alex', 'WuSir', '女神']

# 按照切片改值(迭代着增加)
l = ['太白', 'alex', 'WuSir', '女神']
l[1:3] = 'abcdefg'
print(l) # ['太白', 'a', 'b', 'c', 'd', 'e', 'f', 'g', '女神'] 

# 按照切片(步长)改值(必须一一对应)
l = ['太白', 'alex', 'WuSir', '女神']
l[::2] = '对应'
print(l) # ['对', 'alex', '应', '女神']
View Code

  6. 查:

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

  7. 排序:

li = [1,5,4,7,6,2,3]
#正向排序
li.sort()
print(li)
#反向排序
li.sort(reverse=True)
 print(li)
#反转
li.reverse()
 print(li)
View Code

  8. 列表嵌套:

#列表的嵌套
li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]
#找出'藤'
print(li[1][1])
#找出taibai,首字母大写。
name = li[0].capitalize()
print(name)
# 把'苑昊'的'昊'改为'日天'
print(li[2].replace('','日天'))
#
li[2] = li[2].replace('','ritian')
print(li[2])
#找到'alex',变成大写
li[3][0] = li[3][0].upper()
print(li[3][0])
View Code

  9. join:(list-->str)

    #split(str-->list)

s = 'alex'
s1 = '_'.join(s)
print(s1)
li = ['sssksk','ddkeoejd','我是','打击']
print(''.join(li))
print('+++'.join(li))
#a_l_e_x
#ssskskddkeoejd我是打击
#sssksk+++ddkeoejd+++我是+++打击
View Code

  10. range: 相当于list(0,1,2,3,4,5,6……)

三. 元组tuple:( )

  只读列表:查询可以,循环也可以,切片也可以。但就是不能改。

  1. 元组的索引切片:

tu1 = ('a', 'b', '太白', 3, 666)
print(tu1[0])  # 'a'
print(tu1[-1])  # 666
print(tu1[1:3])  # ('b', '太白')
print(tu1[:-1])  # ('a', 'b', '太白', 3)
print(tu1[::2])  # ('a', '太白', 666)
print(tu1[::-1])  # (666, 3, '太白', 'b', 'a')
View Code

   2. for 循环:

tu1 = ('a', 'b', '太白', 3, 666)
for i in tu1:
    print(i)
View Code

  3. 通过元素找索引index(可切片),找到第一个元素就返回,找不到该元素即报错。

tu = ('太白', [1, 2, 3, ], 'WuSir', '女神')
print(tu.index('太白')) # 0

  4. count: 获取某元素在列表中出现的次数:

tu = ('太白', '太白', 'WuSir', '吴超')
print(tu.count('太白')) # 2
View Code

  5. len

tu1 = (1,2,3,4,84,5,2,8,2,11,88,2)
print(len(tu1))#12
View Code

 

posted on 2019-03-28 23:40  *码僧  阅读(80)  评论(0)    收藏  举报

导航