关于Python爬虫使用技巧

news/2024/7/19 11:39:24 标签: python, 爬虫, 开发语言, 网页爬虫

首先,Python是一种非常流行的编程语言,拥有广泛的应用领域,例如数据分析、人工智能、Web开发等。如果您是初学者,可以开始学习基础的语法和概念,例如变量、数据类型、循环、函数等等。许多在线资源可以提供学习资料。

其次,Python拥有大量的第三方库和框架,可以帮助您提高开发效率并处理各种任务,例如NumPy和Pandas用于数据处理,Scikit-learn和TensorFlow用于机器学习,Django和Flask用于Web开发等等。您可以根据自己的需求选择适合的库和框架。

在这里插入图片描述

最后,了解良好的编码习惯和软件工程原则也非常重要,这可以帮助您编写可靠、可维护和可扩展的代码。例如,遵循PEP 8的代码风格指南、包管理和版本控制等等。

Python编程需要注意以下几点:

缩进是代码结构的一部分,所以要注意缩进的正确性。

Python是动态类型语言,需要注意变量类型的正确使用。

Python有许多内置函数和库,需要熟悉常用的函数和库,以及它们的用法。

Python是解释型语言,需要注意代码的效率和性能。

Python有许多自带的模块和第三方库可以使用,需要学会模块和库的使用方法。

Python语法基础

1、语法规定

python语言对缩进要求十分严格,使用空白实现缩进,一般通过4个空格表示每一级的缩进。(不建议使用Tab键)

行尾的冒号“:”表示下一行代码缩进的开始

同一层次的代码必须有相同的缩进,每一组这样的语句称为一个块

在这里插入图片描述

2、注释

单行注释:以#开头,只在一行中显示注释内容

多行注释:被称为成对注释,继承于C语言

3、编码

Python源码文件以UTF-8格式进行编码,所有字符串都是Unicode字符串

开发者可以为源码文件指定不同的编码

encode函数:字符转换成计算机内的字节形式

decode函数:把字节转换成能看的懂的、直观的形式

4、标识符

第一个字符必须是字母或者下划线“_”
区分大小写
Python3.x中,非ASCII标识符也是合法的

5、关键字

在Python标准库中提供了一个关键字模块:keyword module

python">>>> import keyword #导入名为“keyword”的内置标准库
>>> keyword.kwlist #kwlist 能够列出所有内置的关键字
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>>

常用关键字具体说明:

and:用于表达式运算中的逻辑与操作
assert:断言,用于判断变量或条件表达式的值是否为真
class:用于定义类
def:用于定义函数或方法
elif:条件语句,与 if 和 else 结合使用
except:包括捕获异常后的操作代码,与 try 和 finally 结合使用
finally:用于异常语句,出现异常后执行 finally 包含的代码块,与 try 和 except 结合使用
global:定义全局变量
import:用于导入模块,与 from 结合使用
is:判断变量是否为某个类的实例
nonlocal:用于表示标识外部作用域的变量
or:用于表达式运算,逻辑或操作
print:打印输出语句
return:用于从函数返回计算结果
while:循环语句
yield:用于从函数依次返回值
以下划线开始或者结束的标识符通常具有特殊含义

以一个下划线开始的标识符
如“foo”:不能用 from module import * 语句导入
前面有两个下划线的标识符
如“
_ bar”:被用来实现类的私有属性

6、声明变量

变量定义

输出变量的值

运行结果:

同时赋值两个变量

对变量a、b进行同时赋值,分别赋值为“0”,“1”,最后输出变量a、b的值,运行结果如下:

7、局部变量

局部变量只能在函数或者代码块内使用的变量,函数或者代码一旦结束运行,局部变量的生命周期也将结束。局部变量只能在被创建的函数或者代码块内有效。

在这里插入图片描述

8、全部变量

在函数外面定义的变量叫做全局变量,全局变量能够被不同的函数、类或文件共享使用,也可以被文件内的任何函数和外部文件访问。

在这里插入图片描述

9、实现输入功能

通过调用内置函数 input() 可以实现输入功能

python">input([prompt])

代码范例:

python">>>>
>>> name = input('您好,请输入您的名字:')
您好,请输入您的名字:二哥
>>> name
'二哥'
>>>

10、实现输出功能

输出的作用是显示执行的结果,主要通过 print() 函数实现。语法格式如下:

python">print( value,...,sep=", end='\n') #只展示了部分参数

输出参数具体说明:

value:表示要输出的信息,后面的省略号表示可以有多个输出的信息
sep:表示在多个要输出信息之间的分隔符,默认值是一个空格
end:表示在所有要输出信息之后添加的符号,默认值为换行符
在 print() 函数中可以同时使用多个字符串,在使用时用逗号“,”隔开

函数 print() 还可以打印输出整数或计算结果:

python">>>> print(300)
300
>>> print(100+200)
300
>>> print('100 + 200 =',100 + 200)
100 + 200 = 300
>>>

代码范例:

在这里插入图片描述


http://www.niftyadmin.cn/n/231502.html

相关文章

从此告别写SQL!DataLeap帮你零门槛完成“数据探查”

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 在日常数据处理工作中,产品、运营、研发或数据分析师经常会面临数据量大且混乱、质量参差不齐的问题,需要花费大量时间和精力校验表数据是否…

[计算机图形学]光线追踪前瞻:阴影图(前瞻预习/复习回顾)

一、前言 我们前面学习过了光栅化,而光栅化会有一系列问题,比如:全局的光线传输,阴影。我们之前讲着色的时候说了,我们认为着色是一个局部的操作,我们只考虑着色点本身,并不考虑其它物体的遮挡对…

【是C++,不是C艹】 什么是C++ | C++从哪来 | 学习建议

💞💞欢迎来到 Claffic 的博客 💞💞 👉专栏:《是C,不是C艹》👈 前言: 我知道你急着学C,但你先别急,薛之谦认识认识C还是很有必要的。本期跟大家聊…

【深入浅出】C语言中的数据流:了解流程、类型和操作

博客昵称:吴NDIR 个人座右铭:得之淡然,失之坦然 作者简介:喜欢轻音乐、象棋,爱好算法、刷题 其他推荐内容:AI前言:ChatGPT的不足 其他内容推荐:五种排序算法 【前言】 C语言中的数据…

FT2000+ openEuler 20.03 LTS SP3 yum install qemu手动创建虚拟机 图形界面安装openEuler 20.03系统

安装qemu yum install qemu -y 安装系统 创建虚拟硬盘 /usr/bin/qemu-img create -f qcow2 openEuler.qcow2 20g 挂载iso启动 /usr/bin/qemu-kvm -machine virt,accelkvm,usbon -cpu host -m 32G -smp 8,sockets1,cores8,threads1 -boot d -hda /home/yeqiang/qemu-virt…

【智能算法】使用 MATLAB 中的 Deep Learning Toolbox 来构建和训练 LSTM 神经网络

训练 LSTM 神经网络 我们可以使用 MATLAB 中的 Deep Learning Toolbox 来构建和训练 LSTM 神经网络。 首先,需要将训练数据和测试数据导入到 MATLAB 环境中,可以使用命令: XTrain = ...; % 训练数据 YTrain = ...; % 训练标签 XTest = ...; % 测试数据 YTest = ...; % 测…

【计算机网络复习】第四章 网络层 1

网络层的位置和基本功能 o 实现了端到端(主机-主机)的数据传输 o 路由选择 n 根据数据携带的目的主机地址为数据包选择一条的路径,以到达目的主机 o 主机/路由器编址 n 每个网络接口有一个唯一的IP地址 o 网络互联 n 在不同的网…

go语言切片做函数参数传递+append()函数扩容

go语言切片函数参数传递append()函数扩容 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 二叉树递归go代码: var ans [][]int func pathSum(root *TreeNode, targetSum int) ( [][…