python3基础知识三

接上:

5、列表

  • 更新列表 :  可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项
  • 删除列表元素 :   可以使用 del 语句来删除列表的的元素。eg:del list[2]   或者使用 remove()方法
  • + 号用于组合列表,* 号用于重复列表
  • for x in [1, 2, 3] : print(x, end=" ")      迭代
  • 列表函数&方法
    • 函数:
    • len(list)   列表元素个数
    • max(list)   返回列表元素最大值
    • min(list)   返回列表元素最小值
    • list(seq)   将元组转换为列表
    • 方法:
    • list.append(obj)  在列表末尾添加新的对象
    • list.count(obj)   统计某个元素在列表中出现的次数
    • list.extend(seq)  在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
    • list.index(obj)   从列表中找出某个值第一个匹配项的索引位置
    • list.insert(index, obj)       将对象插入列表
    • list.pop(obj=list[-1])        移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    • list.remove(obj)        移除列表中某个值的第一个匹配项
    • list.reverse()          反向列表中元素
    • list.sort([func])       对原列表进行排序
    • list.clear()            清空列表
    • list.copy()             复制列表

6、元  组 

  • 元组的元素不能修改。元组使用小括号,列表使用方括号。
  • 元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。
  • 与字符串一样,元组之间可以使用 + 号和 * 号进行运算。
  • for x in (1, 2, 3): print x,         迭代
  • 元组内置函数
    • len(tuple)        计算元组元素个数。
    • max(tuple)        返回元组中元素最大值。
    • min(tuple)        返回元组中元素最小值。
    • tuple(seq)        将列表转换为元组。

>>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
>>> tuple1=tuple(list1)
>>> tuple1
('Google', 'Taobao', 'Runoob', 'Baidu')

7、字   典

  • 字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,                                     格式如下所示     d = {key1 : value1, key2 : value2 }
  • 字典键的特性
    • 字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
    • 1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,
    • 2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行
  • 字典内置函数&方法
    • 内置函数
    • len(dict)   计算字典元素个数,即键的总数。
    • str(dict)   输出字典,以可打印的字符串表示
    • type(variable)返回输入的变量类型,如果变量是字典就返回字典类型。

>>> dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
>>> type(dict)
<class 'dict'>

    • 内置方法
    • radiansdict.clear()     删除字典内所有元素
    • radiansdict.copy()      返回一个字典的浅复制
    • radiansdict.fromkeys()  创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
    • radiansdict.get(key, default=None)        返回指定键的值,如果值不在字典中返回default值
    • key in dict2    如果键在字典dict里返回true,否则返回false
    • radiansdict.items()     以列表返回可遍历的(键, 值) 元组数组
    • radiansdict.keys()      以列表返回一个字典所有的键
    • radiansdict.setdefault(key, default=None)和get()类似,
    • 但如果键不存在于字典中,将会添加键并将值设为default
    • radiansdict.update(dict2)把字典dict2的键/值对更新到dict里
    • radiansdict.values()以列表返回字典中的所有值
    • pop(key[,default])删除字典给定键 key
    • 所对应的值,返回值为被删除的值。key值必须给出。否则,返回default值。
    • popitem()随机返回并删除字典中的一对键和值(一般删除末尾对)。

8、可变参数

在Python函数中,还可以定义可变参数。

  如:给定一组数字a,b,c……,请计算a2 + b2 + c2 + ……。

  要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首先想到可以把a,b,c……作为一个list或tuple传进来,这样,函数可以定义如下:

1
2
3
4
5
def  calc(numbers):
     sum  =  0
     for  in  numbers:
         sum  =  sum  +  *  n
     return  sum

  但是调用的时候,需要先组装出一个list或tuple:

1
2
3
4
>>> calc([ 1 2 3 ])
14
>>> calc(( 1 3 5 7 ))
84

  如果利用可变参数,调用函数的方式可以简化成这样:

1
2
3
4
>>> calc( 1 2 3 )
14
>>> calc( 1 3 5 7 )
84

  所以,我们把函数的参数改为可变参数:

1
2
3
4
5
def  calc( * numbers):
     sum  =  0
     for  in  numbers:
         sum  =  sum  +  *  n
     return  sum
  • 定义可变参数和定义list或tuple参数相比,仅仅在参数前面加了一个*号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数:

1
2
3
4
>>> calc( 1 2 )
5
>>> calc()
0

  如果已经有一个list或者tuple,要调用一个可变参数怎么办?可以这样做:

1
2
3
>>> nums  =  [ 1 2 3 ]
>>> calc(nums[ 0 ], nums[ 1 ], nums[ 2 ])
14
  • 这种写法当然是可行的,问题是太繁琐,所以Python允许你在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去:

1
2
3
>>> nums  =  [ 1 2 3 ]
>>> calc( * nums)
14

  这种写法相当有用,而且很常见,也很有用 。 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smilejiasmile

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值