一.上节回顾:

1,find通过元素找索引,可切片,找不到返回-1
2,index,找不到报错。
3,split 由字符串分割成列表,默认按空格。
4,captalize 首字母大写,其他字母小写。
5,upper 全大写。
6,lower 全小写。
7,title,每个单词的首字母大写。
8,startswith 判断以什么为开头,可以切片,整体概念。
9,endswith 判断以什么为结尾,可以切片,整体概念。
10,format
{}{}{}.format(有顺序)
{0}{1}{2}{0}.format(有顺序的)
'{name} {age}'.format(name=李复,age=12)
11,strip 默认去掉两侧空格,有条件,
12,lstrip,rstrip
14,center 居中,默认空格。
15,count查找元素的个数,可以切片,若没有返回0
16,expandtabs
17,replace(old,new,次数)
18,isdigit,isalpha,isalnum
19,swapcase 大小写翻转
20,for i in 可迭代对象。

二、作业:

#4,实现一个整数加法计算器:
#如:content = input(‘请输入内容:’) # 如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
#方法一
msg=input('请输入内容')
a,b=msg.split('+')
sum=int(a)+int(b)
print(sum)
#方法二
content = input('请输入内容:') # content = '3 + 5'
index = content.find("+") # index = 2
s1 = int(content[index+1:]) # int('5') int(' 5') int('5 ')
print(s + s1)
#5,计算用户输入的内容中有几个整数。
#如:content = input(‘请输入内容:’) # 如fhdal234slfh98769fjdla
#理解为有多少个数字
content = input('请输入内容')
n = 0
for i in content:
if i.isdigit():
n+=1
print(n)
#理解为有多少个整数
name = input('请输入:')
count = 0
while name:
name=name.strip('abcdefghijklmnopqrstuvwxyz')
name = name.lstrip('')
count += 1
print(count)

作业题收藏

三、列表:

  (1)索引和切片和字符串类似,切片的输出结果是列表

lis = ['alex',19,'175cm',True]
print(lis[0],lis[1],lis[2]) #alex 19 175cm
print(lis[0:2],lis[3:0:-1],lis[2::2]) # ['alex', 19] [True, '175cm', 19] ['175cm']

(2)列表的增加  append(追加) ,insert(根据索引插入),extend(迭代增加)

lis.append('hobby')
print(lis) # ['alex', 19, '175cm', True, 'hobby']
lis.insert(-2,5)
print(lis) #['alex', 19, '175cm', 5, True, 'hobby'] 都是在原来的元素前插入
lis.extend('好聪明')
print(lis) # ['alex', 19, '175cm', 5, True, 'hobby', '好', '聪', '明']
lis.extend(['好聪明',1,2])
print(lis) # ['alex', 19, '175cm', 5, True, 'hobby', '好', '聪', '明', '好聪明', 1, 2]

(3)删除列表中的某个元素 pop(根据索引删除,并且把删除的内容返回,一次只能删除一个)  remove(根据列表中的元素进行删除   如果为空会报错 不返回,一次只能删除一个)

clear (清空一个列表中的所有元素使字符串变为空) del(根据索引进行删除,可以切片删除,可以加步长删除)

lis = ['alex',19,'175cm',True,'']
a = lis.pop()
print(a,lis) # True ['alex', 19, '175cm'] 不加索引默认删除最后一个,加索引按照索引,不能超出索引
#lis.remove('19') # remove后必须要加值,值不存在也会报错
lis.remove(19)
print(lis) # ['alex', '175cm', True]
lis.clear()
print(lis) # []
lis = ['alex',19,'175cm',True,'']
del lis[0]
print(lis) # [19, '175cm', True, '']
del lis[0::2]
print(lis) # ['175cm', ''] 也可以使用切片和步长反向删除;超出范围不报错。 如果切片范围不对则没有值

(4)修改  可以使用索引或者切片直接给列表中的元素重新赋值

lis = ['alex',19,'175cm',True,'']
lis[1] = 20
print(lis) # ['alex', 20, '175cm', True, '']
#lis[0:2] = '老炮儿' # ['老', '炮', '儿', '175cm', True, ''] 如果修改的内容比赋值的元素多,则会迭代增加
#lis[0:2] = ('老','跑','炮儿') # ['老', '跑', '炮儿', '175cm', True, '']
#lis[0:2] = '老炮儿', # ['老炮儿', '175cm', True, ''] # 如果修改的内容比赋值的元素多,可以用,号就不会迭代
#lis[0:3] = '老炮儿', # ['老炮儿', '']
#lis[0:2] = ('老','跑','炮儿'), # [('老', '跑', '炮儿'), '175cm', True, '']
lis[2::-1] ='老炮儿' # ['儿', '炮', '老', True, ''] 可以做反向的赋值
print(lis)

(5)查找字符串

切片去查,或者循环去查

li = [1,2,5,'taibai','yuanhao',[1,'alex',3,],True]
for i in li:
print(i)

(6)find 和index    列表中不支持find 只有 index

li = [1,2,5,'taibai','yuanhao',[1,'alex',3],True]
print(li.index(5,2,)) # 0 支持切片不支持步长 查找元素不存在时候会报错
print(li.index(True)) # 0 如果列表中含有布尔型,那么将无法用index 取值

(7)排序和翻转列表

li=[1,2,3,4,7,6,9,8,5.5]
#li.sort()
#print(li) # [1, 2, 3, 4, 5.5, 6, 7, 8, 9] 可以适用于小数的排序
#反转
#li.reverse() # 等价于 li[-1::-1]
#print(li) # [5.5, 8, 9, 6, 7, 4, 3, 2, 1] 只反转不排序
li.sort(reverse=True)
print(li) # [9, 8, 7, 6, 5.5, 4, 3, 2, 1] 先排序后反转

(8)计数

li=[1,2,3,4,7,6,9,8,5.5,1,2,1]
#a = li.count(1)
#print(a) # 3
a = li.count('')
print(a) # 0 如果找不到结果是0
for i in li:
print(i,li.count(i))

(9)range   指定范围,生成指定数字。

#for i in range(1,10):
# print(i) #for i in range(1,10,2): # 步长
# print(i) for i in range(10,0,-1): # 反向步长
print(i)
l = range(0,10)
print(type(l)) # <class 'range'>
print(l[0]) #
print(l[0:2]) #range(0,2)

  

(10)元组

#元组的索引与列表类似,也可以切片取值,切片取值的结果是元组
lis = ('alex',19,'175cm',True,'')
#print(lis[0],lis[1],lis[2]) #alex 19 175cm
#print(lis[0:2],lis[3:0:-1],lis[2::2]) # ('alex', 19) (True, '175cm', 19) ('175cm')
# t = (1,2,3,'adsf',True,[12,3,'苑昊','taibai'],('fdsa',2,3))
# print(t[4])
# print(t[1:4])
# for i in t:
# print(i)
# t[4] = False 儿子不能更改
# print(t)
# t[5][2] = '苑日天' #里边的列表元素可以修改
# print(t)

(11)列表嵌套

  列表中的元素可以是列表也可以是元组 也可以含有字典

li = [1,2,5,'taibai','yuanhao',[1,'alex',3,],True]
print(li[3]) # taibai
print(li[3][3]) # b
s = li[4].capitalize()
li[4] = s
li[4] = 'Yuanhao'
print(li) # [1,2,5,'taibai','Yuanhao',[1,'alex',3,],True]
s2 = li[4].replace('hao','日天')
li[4] = s2
li[4] = li[4][0:4] + 'ritian'
print(li) # [1, 2, 5, 'taibai', 'Yuanritian', [1, 'alex', 3], True]
l2 = li[5]
li[5][0] = '文杰'
print(li) # [1, 2, 5, 'taibai', 'Yuanritian', ['文杰', 'alex', 3], True]
li[5][1] = li[5][1].upper()
print(li) [1, 2, 5, 'taibai', 'Yuanritian', ['文杰', 'ALEX', 3], True]

  

   

最新文章

  1. python网页抓取练手代码
  2. Android文件存储
  3. .htaccess
  4. Python的平凡之路(6)
  5. 京东B2B的4种供销模式
  6. FusionCharts的使用方法
  7. ASCII 码表
  8. 寻找序列中最小的第N个元素(partition函数实现)
  9. BZOJ2348: [Baltic 2011]Plagiarism
  10. 亿图图示专家v7.7破解版
  11. win7下文件名不能定义为con(任何文件格式)
  12. 【转】cookielib模块
  13. Android布局概述
  14. java深入浅出之数据结构
  15. VUE 简单属性操作
  16. Response()的对象
  17. python第三次周末大作业
  18. Python笔记 【无序】 【二】
  19. Nuget 打包 for .Net Standart project
  20. Linux内核设计与实现 第一章 第二章

热门文章

  1. JS中map、forEach、filter、reduce等Array新增方法的区别
  2. 持续集成之Jenkins+Gitlab简介 [一]
  3. Appstore 提交Ipad 和Iphone版
  4. 设计模式:工厂方法模式(Python)
  5. 记一次R的可视化使用-生成城市各个景点的多边形图
  6. 【Python 数据分析】pandas模块
  7. iOS学习笔记-自定义过渡动画
  8. Swift 泛型參数
  9. 在Eclipse中导入dtd和xsd文件,使XML自动提示(转)
  10. 电脑 F键(功能键)的具体作用