我是靠谱客的博主 鲤鱼滑板,最近开发中收集的这篇文章主要介绍python基础学习之循环中的函数第二章:python基础学习之循环中的函数一、奇怪的range()函数二、有趣的enumerate()函数三、经典语句:break四、经典contunue语句五、随性pass语句六、 有趣的推导式七、其他总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第二章:python基础学习之循环中的函数

python循环中的函数

  • 第二章:python基础学习之循环中的函数
    • * for&while语句中常用的函数
  • 一、奇怪的range()函数
  • 二、有趣的enumerate()函数
    • *enumerate(A)于for循环相结合使用。
  • 三、经典语句:break
  • 四、经典contunue语句
  • 五、随性pass语句
  • 六、 有趣的推导式
  • 七、其他
  • 总结


* for&while语句中常用的函数

*循环两板斧while、for。*
  • while循环
  • while … else…循环
  • for循环
  • for… else…

一、奇怪的range()函数

range([start,] stop[,step=1])

  • 这个BIF(内置函数)有三个参数,两个中括号里的参数可选。
  • step=1表示第三个参数默认值是1,在这里我理解为“步长”。
  • range()函数BIF(内置函数)在告诉读者range()如何使用,start开始数字序列,stop结束数字序列,值得一看的是:
for i in range(2, 9):  # 不包含9
   print(i)

# 2
# 3
# 4
# 5
# 6
# 7
# 8

#start=1,stop=10,step=2,开始值1,结束值10,步长2,
for i in range(1, 10, 2):#循环走不到i=10时
   print(i)
​
# 1
# 3
# 5
# 7
# 9

二、有趣的enumerate()函数

enumerate(sequence,[start=0])

  • sequence:一个序列、迭代器或支持迭代的对象。
  • start:下标起始的位置。
  • 返回enumerate(枚举)对象。
seasons = ['Spring', 'Summer', 'Fall', 'Winter']
lst = list(enumerate(seasons))
print(lst)
# [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
lst = list(enumerate(seasons, start=1))  # 下标从 1 开始
print(lst)
# [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]```

*enumerate(A)于for循环相结合使用。

格式如下:

for i, a in enumerate(A)
    do something with a  
'''
用 enumerate(A) 不仅返回了 A 中的元素,
还顺便给该元素一个索引值 (默认从 0 开始)。
此外,用 enumerate(A, j) 还可以确定索引起始值为 j。
'''

languages = ['Python', 'R', 'Matlab', 'C++']
for language in languages:
    print('I love', language)
print('Done!')
# I love Python
# I love R
# I love Matlab
# I love C++
# Done!

#给元素加索引值,从2开始
for i, language in enumerate(languages, 2):
    print(i, 'I love', language)
print('Done!')
# 2 I love Python
# 3 I love R
# 4 I love Matlab
# 5 I love C++
# Done!

三、经典语句:break

break语句跳出当前所在层的循环。

import random
secret = random.randint(1, 10) #[1,10]之间的随机数

while True:
    temp = input("猜一猜小姐姐想的是哪个数字?")
    guess = int(temp)
    if guess > secret:
        print("大了,大了")
    else:
        if guess == secret:
            print("你太了解小姐姐的心思了!")
            print("哼,猜对也没有奖励!")
            break
        else:
            print("小了,小了")
print("游戏结束,不玩儿啦!")

四、经典contunue语句

continue终止本轮循环并开始下一轮循环。

for i in range(10):
    if i % 2 != 0:
        print(i)
        continue
    i += 2 #i
    print(i)

# 2
# 1
# 4
# 3
# 6
# 5
# 8
# 7
# 10
# 9

五、随性pass语句

pass语句的意思是“不做任何事”,如果在“需要”有语句的地方不写任何语句,那么解释器会提示错误,而pass语句就是来解决这一问题。

def a_func():

# SyntaxError: unexpected EOF while parsing

#加pass就不会出错
def a_func():
    pass

六、 有趣的推导式

列表推导式
[expr for value in collection [if condition] ]

x = [-4, -2, 0, 2, 4]
y = [a * 2 for a in x]
print(y)
# [-8, -4, 0, 4, 8]

x = [i ** 2 for i in range(1, 10)]
print(x)
# [1, 4, 9, 16, 25, 36, 49, 64, 81]

x = [(i, i ** 2) for i in range(6)]
print(x)

# [(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]

a = [(i, j) for i in range(0, 3) for j in range(0, 3)]
print(a)

# [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

x = [[i, j] for i in range(0, 3) for j in range(0, 3)]
print(x)
# [[0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2]]

x[0][0] = 10
print(x)
# [[10, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2]]

a = [(i, j) for i in range(0, 3) if i < 1 for j in range(0, 3) if j > 1]
print(a)

# [(0, 2)]

元组推导式
( expr for value in collection [if condition] )

a = (x for x in range(10))
print(a)

# <generator object <genexpr> at 0x0000025BE511CC48>

print(tuple(a))
# (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

字典推导式
{ key_expr: value_expr for value in collection [if condition] }

b = {i: i % 2 == 0 for i in range(10) if i % 3 == 0}
print(b)
# {0: True, 3: False, 6: True, 9: False}

集合推导式
{ expr for value in collection [if condition] }

c = {i for i in [1, 2, 3, 4, 5, 5, 6, 4, 3, 2, 1]}
print(c)
# {1, 2, 3, 4, 5, 6}

七、其他

next(iterator[, default]) Return the next item from the iterator.
If default is given and the iterator is exhausted, it is returned instead of raising StopIteration.
next(iterator[, default])从迭代器返回下一项。如果给出了[,default]参数,并且迭代器已经耗尽,则返回它而不是引发StopIteration异常,而是default。

it = iter([1, 2, 3, 4, 5])
# 循环:
while True:
    try:
        # 获得下一个值:
        x = next(it)
        print(x)
    except StopIteration:
        # 遇到StopIteration就退出循环
        break

在这里插入图片描述

#给next(iterable[, default])函数第二个参数传值,则会返回[default]值。
it = iter([1, 2, 5, 4, 3])
while True:
    x = next(it, 'a')
    print(x)
    if x == 'a':
        break

在这里插入图片描述

总结

记录循环语句中常用的函数。

最后

以上就是鲤鱼滑板为你收集整理的python基础学习之循环中的函数第二章:python基础学习之循环中的函数一、奇怪的range()函数二、有趣的enumerate()函数三、经典语句:break四、经典contunue语句五、随性pass语句六、 有趣的推导式七、其他总结的全部内容,希望文章能够帮你解决python基础学习之循环中的函数第二章:python基础学习之循环中的函数一、奇怪的range()函数二、有趣的enumerate()函数三、经典语句:break四、经典contunue语句五、随性pass语句六、 有趣的推导式七、其他总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部