python数据分析基础2

序列

序列(sequebce)不是一个独立的数据类型,而是列表、元组和字符串等元素之间有顺序关系的数据类型的统称,常见的有字符串、列表、元组。

python中的“序列”有哪些特点?

# 1、支持索引(通过元素的序号读取某个元素)
    myString[1]

# 2、支持切片([start:stop:step])
    myString[1:9:2]

# 3、支持迭代 (序列是可迭代的数据类型)
    for i in myString:
        print()

#4、支持拆包式赋值  (序列支持拆包式赋值)
    a1,a2,a3,a4,a5,a6 = myList

#5、支持重复运算 (重复运算符为*)
    mylist *3

#6、设有专门函数

  

集合

集合是指一种可变的、无序容器,标志性符合为{}。Python 中的{}还可以用在字典当中。

因为集合是无序的,所以不能通过下标访问集合中的某个元素。其中frozenset是不可变对象

字典

字典是一种可变的、无序的容器,标志性符号为{}。其中每个值value都有自己的键key。字典作为一个映射结构,即key和value之间建立了映射关系。本质上,字典是一个以key为元素的集合。

可以通过key访问value。

字典在数据分析/数据科学中的主要应用场景是存放“临时数据”,如函数参数“**args”。

在函数形参中,带有“*”和“**”的参数分别代表的是以“元组(不带key的值)”和“字典(带key的值)”的形参接收不定长的实参。

迭代器和生成器

  • 为什么python中不显示有些函数的返回值,如range()?因为这些函数的返回值是迭代器(iterator)
  • 什么是迭代器?可被next()函数调用,并不断返回下一个值的对象。python的内置函数iter()可以将“迭代对象”转换成“迭代器”
  • 如何遍历迭代器?内置函数next();也可以用在for语句中
  • 什么是生成器?指生成一个新的迭代器的函数。特点:1、不用 return 语句,而用yisld语句  2、不是立刻计算,而是惰性计算。
  • 如何定义生成器?与普通函数定义类似,但是需要将return 改为yield。
  • lis = [1,2,3,4,5,6,7,8,9]
    next(lis)
    TypeError                                 Traceback (most recent call last)
    <ipython-input-15-cdd6288ddae5> in <module>
          1 lis = [1,2,3,4,5,6,7,8,9]
    ----> 2 next(lis)
    
    TypeError: 'list' object is not an iterator
    

    将 可迭代的对象转换为迭代器------------内置函数iter()

  • myl = iter(lis)
    print(next(myl))
    print(next(myl))
    print(next(myl))
    print(next(myl))
    print(next(myl))
    1
    2
    3
    4
    5

    函数

函数和方法:

类外定义叫函数,可以直接用函数名调用。如sort(myLIst)

类内定义叫方法,必须通过对象名来调用。如myList.sort()

函数的种类:

内置函数、模块函数、用户自定义函数

模块

包通常是一个文件夹,即含有_init_.py文件的文件夹

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值