浅尝辄止-Python

Python 2020-02-13 59 次浏览 次点赞

关于for循环

#通常我们这样来
for x in range(0, 10):
    print(x, end='|')

关于range()函数,我们应该需要它的基本用法循环外,还应该了解它的其他参数

比如说:

for x in range(0, 10, 2):
    print(x, end='|')
# 0|2|4|6|8|

这里的第一个参数是函数循环的起始位置,之后的第二个参数则为到10,并不是说计数从0到10,而是从0到9。第三个参数我们赋值为2,那么结果便是每隔2偏移量记一次,所以能得出来以0为第一位,2为增量的一个等差数列。

如若我要不想正着显示,我想要倒着显示该咋搞?

for x in range(10, 0, -2):
    print(x, end='|')
# 10|8|6|4|2|

万物皆对象Object

在Python中万物皆对象,我们在平常的时候,难免要对python中的一些东西进行比较判断

那么我们需要知道如何去判别,使用何种运算符进行判断

对象的三个特征

id 、 value 、 type
is     ==      isinstance
# isinstance() 第一个参数传入要检测类型的变量,第二个参数传入基本的数据类型,可以用tuple的形式传入
# int str tuple(不可改变) 值类型 list set dict(可变) 引用类型

lambda表达式、三元表达式

lambda parameter_list: expression
条件为真时返回的结果 if 条件判断 else 条件为假时返回的结果
# 确实与其他语言不大一样 x > y ? x : y

列表推导式

a = [1, 2, 3]
b = [i**3 for i in a]
print(b)
# [1, 8, 27] 结果放在前面,循环搁后边 a后还可以加入简单的条件判断语句 同时也不局限于[]

map()

相当于一个映射吧

list1 = [1, 2, 3]
# 假设我们有一个函数,作用是将传入的参数平方square()
def square(x):
    return x**2
r = map(square, list1)
print(list(r))
# [1, 4, 9]
#其实实现这么小的一个功能没有必要再额外定义一个函数,lambda表达式就成
list1 = [1, 2, 3]
r = map(lambda x: x**2, list1)
print(list(r))
# [1, 4, 9]

reduce()

from functools import reduce
list1 = [1,2,3,4,5]
r = reduce(lambda x, y: x+y, list1) # 需要有两个参数
print(r)
# (((1+2)+3)+4)+5
# 起始x = 1,y = 2,后来将1+2的值作为新一轮的x
# 还有第三个参数  为运算起始值

未完...


本文由 fmujie 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论

召唤看板娘