Python爬虫教程

第一章: 初学乍练-Python快速入门

第二章: 初窥门径-从全局把握网络爬虫

第三章: 爬虫数据-网页与JSON

第四章: 爬虫核心-HTTP协议

第五章: 手到擒来-数据的抓包

第六章: 利刃出鞘-HTTP请求库

第七章: 尘埃落定-数据的解析

第八章: 逆向初探-JS逆向

第九章: 爬虫进阶-Selenium, 中间人拦截

第十章:斗转星移-常用的反爬策略及应对方法

首页 > Python爬虫教程 > 第一章: 初学乍练-Python快速入门 > 1.5节: 控制结构

1.5节: 控制结构

薯条老师 2024-06-19 09:16:26 455 0

编辑 收藏

1.5.1 Python中的控制结构

Python中的控制结构主要有条件控制,循环控制,跳转控制。条件控制即当条件成立时执行某种操作,循环控制用来重复执行程序中的代码,而跳转控制用来控制程序流程的跳转。

有了控制结构,才能实现跟更加复杂的逻辑。如若没有控制结构,那程序中的代码必然是机械的顺序执行,几乎无逻辑可言。

1.5.2 条件控制

在Python中使用if-elif-else关键字来实现条件控制。if用来声明条件控制的主干,elif用来声明条件控制的分支,else仅当if与elif中条件皆不成立时才会执行。

x, y = -1, 1
if x * y > 0:
    print("x与y同号")
elif x * y < 0:
    print("x与y异号")
else:
    print("x与y至少有一个为0")

条件控制中有且仅有一个if, 有0个或多个elif, 最多一个else。当elif与else同时存在时,else必须位于elif后面:

import random
# 构造一个[0, 10]之间的随机数
x = random.randint(0, 10)
if x < 3:
    print("x < 3")
elif x < 5:
    print("3<= x < 5")
elif x < 8:
    print("3 <=x < 8")
else:
    print("8 <=x < 10")

条件控制中有且仅有一个if, 有0个或多个elif, 最多一个else。当elif与else同时存在时,else必须位于elif后面:

1.5.3 循环控制

在Python中使用for, while来实现循环控制。for循环主要用来遍历可迭代对象,Python中的字符串,列表,元组,字典,集合皆是可迭代对象:

# (1) 迭代列表
numbers = [1, 3, 5, 7, 9]
for number in numbers:
    print(number)

    
# (2) 迭代元组
numbers = (1, 3, 5, 7, 9)
for number in numbers:
    print(number) 
    
# (3) 迭代字符串
text = "月落玉长河"
for char in text:
    print(char)
    
    
# (4) 迭代字典
students = {"Lohan": 98, "LoMei": 91, "LoChole"}
for name, score in students.items():
    print(name, score)

    
# (5) 迭代集合
pets = {"Lohan", "LoMei", "LoChole"}
for pet in  pets:
    print(pet)

当需要在程序中实现有条件的循环控制时,应当使用while循环:

# 实现一个简单的猜数字游戏

import random
# 构造一个[0, 10**6]之间的随机数
random_number = random.randint(0, 10**6)
guess_number = input("请输入您猜的数:")

# 如果猜的数与随机数不相等,就一直猜
while guess_number != random_number:
    if guess_number > random_number:
        print("猜大了")
    else:
        print("猜小了")
print("猜对了")

1.5.4 跳转控制

在Python中使用break, continue, return关键字来实现跳转控制。Python中的break用来强制退出循环:

numbers = [1, 3, 5, 7, 9, 11, 13, 15]
sum_ = 0
for number in numbers:
    sum_ += number
    if sum_ > 20:
        # 如果sum_大于20,就跳出循环
        break

而continue仅用来退出当次循环,会从下一个位置继续迭代,读者一定要掌握break与continue的区别:

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
sum_ = 0
for number in numbers:
    if number % 2 == 0:
        # 如果number为偶数,就跳出循环的当前这一次,继续从下一个数开始迭代
        continue
    
    # sum累加的是所有奇数的和
    sum_ += number

Python中的return用来退出函数并返回值给函数的调用方。关于return, 会在后面的函数一节中详细讲解。进一步学习Python中的控制结构,可参考薯条老师的Pyhon基础教程: http://chipscoco.com/?cate=2

1.5.5 最具实力的小班培训

薯条老师在广州有开设线下培训班,小班授课模式,一班最多6个人。也可一对一授课,全程帮助你学好计算机,实现高薪就业。不在广州的同学可提供住宿,也可以报名线上小班,用腾讯会议上直播课。

(1) Python后端工程师高薪就业班,月薪11K-18K,免费领取课程大纲
(2) Python中高级爬虫逆向工程师就业班,月薪15K-25K,包拿Offer
(3) Python数据分析+商业分析+数据科学就业班,企业级项目实战,月薪10K-20K
(4) Python量化交易就业班,A股+期货+数字货币量化,月薪10K-40K
(5) Python机器学习+深度学习算法工程师,月薪20-50K

跟薯条老师学习的学生有拿到花生日记,林氏家居,南方电网,京东, 阿里等公司的offer, 学生的最低薪资有6K,最高薪资有18K, 平均就业薪资有11000。

扫码咨询薯条老师:


扫码领学习资料.jpg


欢迎 发表评论: