Python基础语法学习10

容器型数据类型

1.列表(list)

字面量:[元素1, 元素2, 元素3, …]、[]
元素的要求: 任何数据,可以重复
容器的特点: 可变、有序
元素增删改查:
列表[下标]
列表[开始下标:结束下标:步长]
for 变量 in 列表; for 下标,元素 in enumerate(列表);
操作: +、*、比较大小、比较相等、in 和 not in、max、min、sorted、len、list
相关方法:count、index、sort、reverse、copy…

2.元组(tuple)

字面量:(元素1, 元素2, 元素3, …)、()、(元素,)、 元素1, 元素2, 元素3, …
元素的要求: 任何数据,可以重复
容器的特点: 不可变、有序
元素增删改查: 没有增删改,只有查
和列表查的方式相同
变量1, 变量2, … = 元组
变量1, *变量2, … = 元组
相关操作: 和列表一样
相关方法:count、index…

3.字典(dict)

字面量:{键1:值1, 键2:值2, 键3:值3, …}, {}
元素的要求: 键值对,键的要求是:不可变、唯一; 值的要求:任何数据,可以重复
容器的特点: 可变、无序
元素增删改查:

查:字典[key]、字典.get(key)/字典.get(key, 默认值)
增:字典[key] = 值、字典.setdefault(key, 值)、字典.update(字典2)
删: del 字典[key]、字典.pop(key)、字典.clear()
改: 字典[key] = 值

相关操作: 比较相等、in 和 not in、dict、len
相关方法:copy、fromkeys、…keys、values、items、…

4.集合(set)

字面量:{元素1, 元素2, 元素3, …}、set()
元素的要求: 不可变、唯一
容器的特点: 可变、无序
元素增删改查:

查:for 变量 in 集合
增: 集合.add(元素)、集合.update(序列)
删: 集合.remove(元素)、集合.discard(元素)

相关操作: 比较相等、in 和 not in、set、len、数学集合运算(|, &, -, ^, >, <, <=, >=)
相关方法:

5.字符串(str)

字面量:‘字符集’、“字符集”、’’‘字符集’’’、…
元素的要求: 任何字符
容器的特点: 不可变、有序
元素增删改查:
查: 和列表一样
相关操作: 和列表基本一样
相关方法:40多个(join、replace、split、count、index、strip,…)

函数就是变量

定义函数的时候,其实就是在定义一个类型是function的变量,函数名就是变量名。
普通变量能做的事情函数都可以做

def a():
    print('函数1')


c = lambda x: x*2
"""
def c(x):
    return x*2
"""

b = [1, 2, 3]

# 1)查看变量类型
print(type(b))    # <class 'list'>
print(type(a))    # <class 'function'>

print(id(b))
print(id(a))

# 2) 使用变量中保存的数据
print(b)    # [1, 2, 3]
print(a)    # <function a at 0x10efe85f0>

b2 = b
print(b2[1])
a2 = a
a2()

# 3) 修改变量的值
b = 100
print(b)

a = 'abc'
print(a)

# 4) 变量可以作为列表元素
x = 100


def y():
    return 'abc'


list1 = [x, y, y()]
print(list1)    # [100, <function y at 0x10753d830>, 'abc']
print(list1[0] * 2, list1[0] % 10)     # 200 0
print(list1[2][0], list1[2].replace('a', 'A'))    # a Abc
print(list1[1]())    # abc


# 面试题
list1 = []
for i in range(5):
    list1.append(lambda x: x*i)
    # f = lambda x: x*i
    # list1.append(f)
    # def f(x):
    #     return x*i
    # list1.append(f)

#  list1 = [lambda x: x*i, lambda x: x*i, lambda x: x*i, lambda x: x*i, lambda x: x*i]
# i = 4
print(list1[1](2))     # 8
print(list1[2](2))     # 8

实参高阶函数

**a.普通变量可以作为函数的参数
b.函数可以作为函数的参数
c.将函数的返回值作为实参
**

1.实参高阶函数

如果一个函数的参数是函数,那么这个函数就是实参高阶函数
怎么确定调用函数的时候参数传什么值

# 看这个参数在函数中是怎么使用的
def func2(x):
    print(x + 10)


func2(20)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值