列表、元组、字符串的共同点

  • 都可以通过索引得到每一个元素
  • 默认索引值总是从0开始
  • 可以通过分片的方法得到一个范围内的元素集合
  • 有很多共同的操作符:重复操作符、拼接操作符、成员关系操作符
    所以把列表、元组和字符串三者统称为序列

序列常见的BIF

1. list([iterable]):用于把一个可迭代对象转换为列表


  • list()方法用于把一个可迭代对象转换为列表
    什么是迭代呢???
    所谓迭代,就是重复反馈过程的活动,其目的通常是为了接近并达到所需的目标或结果,每一次对过程的重复被称为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。。。。。就目前来说,迭代就是一个for 循环,今后会介绍迭代器
  • list()方法要么不带参数,要么带一个迭代器作为一个参数,而序列天生就是可迭代的对象
自己动手实现list()方法
sequence = input("请输入一个序列:")
sequence = str(sequence)
a = list()
for i in sequence:a.append(i)
print(a)

2. tuple([iterable]):把一个可迭代对象转换为元组

3. str(obj):把obj对象转换为字符串

4.len(sbu):返回sub参数的长度

5. max():返回序列或者参数集合中的最大值

6.min():返回序列或者参数集合中的最小值

attention:使用max()方法和min()方法都要保证序列或参数的数据类型统一,否则会出错

max(tuple1)的实现方式
tuple1 = input("请输入一个元组:")
tuple1 = tuple(tuple1)
max1 = tuple1[0]
for i in tuple1:if i > max1:max1 = i
print(max1)

7. sum(iterable,[start]):返回iterable和可选参数start的总和

  • 可选参数start,如果设置该参数,表示从该值开始加起,默认值是0

    attention:不是数据类型不能实现sum操作

8. sorted(iterable, key = None, reverse = False):返回一个排序的列表,默认从小到大排

  • 使用方法同list().sort()
  • 列表的内置方法sort()是实现列表原地排序,而sorted()是返回一个排序后的新列表

9. reversed(sequence):返回逆向迭代序列的值

  • 使用方法同list().reverse()
  • 列表的内置方法reverse()是实现列表原地翻转,而reversed()是返回一个排序后的迭代器对象

10. enumerate(iterable):生成由二元组(二元组就是元素数量为2的元组)构成的一个迭代对象,每个二元组由可迭代参数的索引号及其对应的元素组成


zip(iter1[,iter2[…]]):返回由各个迭代参数共同组成的元组


Task

0. 我们根据列表、元组和字符串的共同特点,把它们三统称为什么?
序列

1. 请问分别使用什么BIF,可以把一个可迭代对象转换为列表、元组和字符串?
list()
tuple()
str()

2. 你还能复述出“迭代”的概念吗?
迭代就是重复反馈过程的活动,其目的通常是为了接近并达到所需的目标或结果

3. 你认为调用 max(‘I love FishC.com’) 会返回什么值?为什么?
‘v’,因为v的ASCALL码最大
4. 哎呀呀,现在的小屁孩太调皮了,邻居家的孩子淘气,把小甲鱼刚写好的代码画了个图案,麻烦各位鱼油恢复下代码~~
IsFind:是一个标志flag,预设值为False,当找到名字后,改为True,最后判断是否为False


我的代码:

name = input("请输入待查找的用户名:")
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
IsFind = False
for each in score:if name == each[0]:print(name + '的得分是:', each[1])IsFind = Truebreak
if IsFind == False:print('查找的数据不存在')

小甲鱼代码:


name = input('请输入待查找的用户名:')
score = [['迷途', 85], ['黑夜', 80], ['小布丁', 65], ['福禄娃娃', 95], ['怡静', 90]]
IsFind = Falsefor each in score:if name in each:print(name + '的得分是:', each[1])IsFind = Truebreakif IsFind == False:print('查找的数据不存在!')

5. 猜想一下 min() 这个BIF的实现过程

tuple1 = input("请输入一个元组:")
tuple1 = tuple(tuple1)
min1 = tuple1[0]
for i in tuple1:if i <  min1:min1 = i
print(min1)


小甲鱼

def min(x):#定义函数least = x[0]for each in x:if each < least:least = eachreturn leastprint(min('123456789'))

6. 视频中我们说 sum() 这个BIF有个缺陷,就是如果参数里有字符串类型的话就会报错,请写出一个新的实现过程,自动“无视”参数里的字符串并返回正确的计算结果
小甲鱼代码

def sum(x):result = 0for each in x:if (type(each) == int) or (type(each) == float):result += eachelse:continuereturn resultprint(sum([1, 2.1, 2.3, 'a', '1', True]))

零基础入门学习Python(15)-序列相关推荐

  1. 零基础学python pdf-Python pdf(零基础入门学习Python)V1.0 最新版

    Python pdf(零基础入门学习Python)是一款功能强劲专业实用的Python电子书籍.想要零基础入门学习Python?那就快试试绿色先锋小编推荐的Python pdf最新版下载使用.由作者小 ...

  2. 零基础学python 视频_零基础入门学习PYTHON(第2版)(微课视频版)

    小甲鱼畅销图书重磅升级,针对Python 3.7,通过生动的实例,让读者在实践中理解概念,在轻松.愉快中学会Python! 本书提倡理解为主,应用为王.因此,只要有可能,小甲鱼(注:作者)都会通过生动 ...

  3. 《零基础入门学习Python》学习笔记(1-25)

    参考:<零基础入门学习python>http://edu.csdn.net/course/detail/906?locationNum=1&fps=1&ref=srch&a ...

  4. 零基础python必背代码-零基础入门学习python 96集全

    零基础入门学习python 96集全 第000讲 愉快的开始(视频+课件)xa0 第001讲 我和Python第一次亲密接触(视频+课件)xa0 第002讲 用Python设第一个游戏(视频+课件+源 ...

  5. 零基础学python pdf-笔记《零基础入门学习Python(第2版)》PDF+课件+代码分析

    通过自学编程,感觉到基础知识很重要,越到后面越能发现这一点,光记住是不行的,还要灵活运用,要多调试代码,计算机就是一个不断练习,不断遇到问题,解决问题的工种,要根据实际的业务能想到对应的语法,实际项目 ...

  6. python dict 合并同类项_零基础入门学习Python,这13个Python惯用小技巧一定要收藏...

    原标题:零基础入门学习Python,这13个Python惯用小技巧一定要收藏 Python的小技巧很多,入门容易精通难!在进阶的路上,有没有什么好的技巧和好的方法,就是不断总结,不断记笔记!尤其是好的 ...

  7. 零基础入门python小甲鱼-小甲鱼零基础入门学习Python百度云下载 | 宅男君

    Python编程语言可以在不同平台上使用,比如Windows.MAC.Linux操作系统.通常情况下,一个Python程序在你自己的Windows系统上运行,也可以在别人的MAC系统上运行.Pytho ...

  8. python零基础入门教程百度云-小甲鱼零基础入门学习Python百度云下载 | 宅男君

    Python编程语言可以在不同平台上使用,比如Windows.MAC.Linux操作系统.通常情况下,一个Python程序在你自己的Windows系统上运行,也可以在别人的MAC系统上运行.Pytho ...

  9. 小甲鱼python教程视频怎么样-小甲鱼零基础入门学习Python视频教程全套96集

    资源介绍 教程名称: 小甲鱼零基础入门学习Python视频教程全套96集 课程简介: xa0 xa0 Python具有跨平台特点,Python可以在各种不同类型的计算机上运行,Windows.MAC. ...

  10. 零基础入门学习Python,我与python的第一次亲密接触后的感受!

    前言:Python是适合初学者入门最好的语言 Python适合初学者入门最好的语言 人工智能用Python?高考要加入Python?现在连微软官方Excel都要把Python作为官方语言!Python ...

最新文章

  1. oracle 连续次数,如何求字段连续出现的次数?
  2. c语言键盘回调函数键盘的码,深入浅出剖析C语言函数指针与回调函数(三)
  3. android、ios、php之间AES加密解密
  4. 关于jsp页面显示的时间格式和Oracle数据库中的格式不一样的问题
  5. oracle solaris 内核 源码,直接安装内核区域
  6. Vue 进阶组件实战应用 -- 父子组件传值的应用实例(子父组件传值的两种触发方式)
  7. Google安装Kopernio插件
  8. 大道至简 读后有感
  9. 树状结构搜索功能_ICLR 2020 高分论文!利用稀疏多层次Transformer结构获取语法树!...
  10. 800变频器故障代码_变频器通用故障码意义汇总讲解
  11. Python: names, values, assignment and mutability
  12. 深度学习2.0-11.tensorflow的高阶操作之高阶op
  13. 【花朵识别】基于matlab模板匹配花朵分类【含Matlab源码 472期】
  14. linux必看书籍推荐
  15. https://tieba.baidu.com/p/4008858829
  16. 335x系列平台-usb的模式切换HOST和OTG
  17. strust2-学习(一)框架搭建和简单示例
  18. 叮咚,您有一份专线链路带宽管理方案,请查收
  19. Dungeon Master POJ - 2251 BFS
  20. 一篇读懂:Android/iOS手机如何通过音频接口(耳机孔)与外设通信

热门文章

  1. Redis 高负载排查记录
  2. 图文解读:5 个刁钻的 String 面试题!
  3. ES的跨索引查询有多便利?对比下分库分表、分片更直观
  4. 大龄程序员刚迈过了 35 岁这个“坎儿”,和大家说点儿心里话
  5. Docker是世界上最牛逼的CaaS!
  6. 计算机的一些小操作,电脑小白操作中最实用的9个技巧!
  7. 分布式概念-分布式系统是什么?
  8. 推荐一个你最喜欢的辅助办公软件,你会推荐什么?
  9. Leangoo大讲堂:免费Scrum敏捷开发实战—武汉站
  10. ORACLE数据库系统结构