python学习笔记(2)

python入门学习

filter()函数

filter()函数用于过滤掉不符合条件的元素,返回一个迭代器对象,一般格式为:

filter(function,iterable)

其中,function为半段函数,iterable为可迭代对象。

def IsEvenFunc(n):
    return n % 2 == 0

a = list(filter(IsEvenFunc,[1,2,3,4,5]))

print("a: ",a)

zip()函数

zip()函数接收任意多个可迭代对象作为参数,将对象种对应的元素打包成一个元组,然后返回一个可迭代的zip对象
如果可迭代对象的长度不相同,取最短的可迭代对象的长度

zip([iterable,...])

其中,iterable为一个或多个迭代器。

a = list(zip(["泰山","黄山","庐山","华山"],["山东","安徽","江西","陕西"])) #打包
print("a: ",a)

z = zip([1,2,3],[4,5,6]) #打包
a = list(zip(*z)) #解包

print("a: ",a)

zip(*z)是解包,但是要注意我们不能先迭代z然后再去解包

枚举函数enumerate()

枚举函数enumerate()用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标。

enumerate(sequence,[strat = 0])

其中,sequence: 一个序列,迭代器或其他支持的迭代对象。
start: 下表其实位置,可选。

weeks = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday','saturday']
a = list(enumerate(weeks))
print("a: ",a)

map()函数

map()函数把函数依此映射到序列或迭代器对象的每个元素上,并返回一个可迭代的map对象作为结果.

map(function,iterable,....)

其中,function为被调用的函数,iterable为一个或多个序列

def cube(x):
    return x ** 3

a = list(map(cube,[1,2,3,4,5,6])) #计算列表中的各个元素的立方和

print("a: ",a)

def add(x, y):
    return x + y

a = list(map(add,[1,2,3,4,5],[1,2,3,4,5])) #两个列表中相同位置的元素相加

print("a: ",a)

a,b = map(int, input("请输入两个数(用空格隔开):").split())

print("a = %d, b = %d."%(a,b))

  • 我们注意到使用了一个函数 input().split()其中split()可以接收键盘输入的两个数字。

split()函数的原型为:

    str1.split(str2=" ",num=string.count(str))

str1 : 表示为字符串
str2 : 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num : 分割次数。默认为 -1, 即分隔所有。

逻辑运算符和逻辑运算表达式

运算符 名称 逻辑表达式 描述
and 逻辑“与” x and y x为True或非0,返回y;否则返回x
or 逻辑“或” x or y x为True或非0,返回x;否则返回y
not 逻辑“非” not x x为True或非0,返回False;否则返回True
运算符 描述 实例 结果
in 判断对象是否在序列中 obj sequence obj 在 sequence中返回True,否则返回False
not in 判断对象是否不在序列中 obj not int sequence obj 不在sequence中返回True,否则返回False

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!