Python爬虫学习笔记(一)---Python入门

  • 一、pycharm的安装及使用
  • 二、python的基础使用
    • 1、字符串连接
    • 2、单双引号转义
    • 3、换行
    • 4、三引号跨行字符串
    • 5、命名规则
    • 6、注释
    • 7、 优先级not>and>or
    • 8、列表(list)
    • 9、字典(dictionary)
    • 10、元组(tuple)
    • 11、迭代
    • 12、format方法
    • 13、引入模块
    • 14、文件
    • 15、异常与测试

一、pycharm的安装及使用

pycharm的安装可以自行去搜索教程。

pycharm的使用需要注意:
1、venv文件夹是这个项目的虚拟环境文件,应与代码文件分开。
2、如果运行没有,最后一行是“进程已结束,退出代码为0”,如果最后不是0,那么,就说明运行出错。

二、python的基础使用

1、字符串连接

print("Hello"+"world"+"!")

2、单双引号转义

print括号中使用单引号或者双引号都是可以的。
如果引号中需要打印引号,我们则需要转义。或者外双内单、外单内双都是可以的。

print("He said 'let's go!'")
print("He said \"let\'s go!\"")

3、换行

print("Hello!\nHi!")

每一个print也可以默认换行

4、三引号跨行字符串

隆重介绍"“” XXX"""即可换行

print("""XXXXXX
XXX
XXX
XXX""")

5、命名规则

尽量使用英文变量名,以避免控制台或日记等编码不兼容等问题展现出乱码。

python英文变量名又称是用“下划线命名法”:
1、字母全部小写
2、不同单词用下划线分割
也可以用驼峰命名法,就是用大写字母分割

user_age≠user_Age
python是对大小写敏感的。

同时也不能使用关键词作为变量名,如果打出来是彩色的说明是关键字哦!

6、注释

#是注释,也可以用快捷键“ctrl”+“/”注释。
“”" “”"也可以作为多行注释

7、 优先级not>and>or

8、列表(list)

shopping_list=[]
sp_list=["1", "2"]
sp_list.append("3")

方法是对象.方法名(…)
函数是函数名(对象)

列表是可变的

9、字典(dictionary)

key:value
键:值

键是用来查找值的

dict={"小明":"1","小花":"2"}
#增加元素
dict["小谭"]="3"
#判断一个键是否在
print("小明" in dict)
#删除元素
del dict["小谭"]

10、元组(tuple)

tp={("张伟",21):"1",("张伟",22):"2",("张伟",23):"3"}
zw21_phone=tp[("张伟",21)]

11、迭代

dict.keys()   #所以键
dict.values() #所有值
dict.items()  #所有键值对#写法一
for a,b in dict.items():if a>=38:print("XXXX")#写法二:
for temp in dict.items():a=temp[0]b=temp[1]...

range(a,b)表示从a到b-1
range(a,b,c)表示从a开始一直到b-1,步长为c

12、format方法

message="""金{0}贺岁,金{0}敲门,给{1}及家人拜年啦!""".format(year,name)message="""金{year}贺岁,金{year:.0f}敲门,给{name}及家人拜年啦!""".format(year=year,name=name)print(f"{message}")
#f+字符串

13、引入模块

import statistics
print(statistic.median([19,-5,36])
#也可以这样子写
from statistics import median
print(median([19,-5,36])

pycharm中,按住control键点击函数名即可查看更详细的介绍。

要安装什么的话,去终端,输入pip install 库名

14、文件

两个等价的代码

f=open("./data.txt") #相对路径
print(f.read())
f.close()

与之等价的是

with open("./data.txt","r",encoding="utf-8") as f:print(f.read()) #结束后,会自动关闭文件,释放资源

一些相关操作

f.readline()
f.readlines()
f.read()#文件特别大的时候,最好不要用read(),因为可能爆内存
f.read(10)
f.read(10)#会接着上面继续读

"w":如果文件不存在,会自动创建新文件;如果文件存在,就会把原本的文本清空。
"a":就是一个追加模式。

15、异常与测试

try:XXX #放上你觉得可能会报错的代码
except ValueError:#这里ValueError是错误的类型,可以替换成其他的,也可以不写print("XX") #可以用来告知客户
except:XXX
else: #没有错误时运行XXX
finally: #不管有没有错误都会运行XXX

'assert'断言

assert 1+2>6 #这里就会报错且不会继续进行下去

unittest专门测试的库


在这里插入图片描述
继承super()
在这里插入图片描述
测试,来判断是否与自己的预期相等
在这里插入图片描述
这表明全部通过测试点
在这里插入图片描述
有一个测试点错误,还会告诉你具体原因
在这里插入图片描述
常见的测试方法
在这里插入图片描述
unittest会返回更加具体的原因。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/621730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SDRAM小项目——写模块

写模块跟着视频看了一个多星期,一开始始终有点弄不清楚,现在记录一下理解的过程。 阅读文档信息: 首先阅读文档信息,了解SDRAM写过程的状态转换和时序图 SDRAM整体状态流程如图所示: 在SDRAM整体系统中&#xff0c…

【算法小课堂】动态规划

动态规划 动态规划相信大家都知道,动态规划算法也是新手在刚接触算法设计时很苦恼的问题,有时候觉得难以理解,但是真正理解之后,就会觉得动态规划其实并没有想象中那么难。网上也有很多关于讲解动态规划的文章,大多都…

Java--业务场景:在Spring项目启动时加载Java枚举类到Redis中(补充)

文章目录 前言步骤测试结果 前言 通过Java–业务场景:在Spring项目启动时加载Java枚举类到Redis中,我们成功将Java项目里的枚举类加载到Redis中了,接下来我们只需要写接口获取需要的枚举值数据就可以了,下面一起来编写这个接口吧。 步骤 在…

leetcode238:除自身以外数组的乘积

文章目录 1.使用除法(违背题意)2.左右乘积列表3.空间复杂度为O(1)的方法 在leetcode上刷到了这一题,一开始并没有想到好的解题思路,写篇博客再来梳理一下吧。 题目要求: 不使用除法在O(n)时间复杂度内 1.使用除法&am…

新一代数字原住民:市场痛点与“繁”思维应对之道

随着科技的迅速发展,尤其是互联网的普及,新一代数字原住民经营者已经逐渐成为市场的主力军。不同于传统的消费者,有着独特的消费习惯和心理需求。企业要在这激烈的市场竞争中获得优势,深入了解这一群体的特征和心理、行为&#xf…

有趣的事,讲给有趣的人听

哈哈哈,今天不写技术了,今天分享一下生活,技术我们什么时候都可以学,但是生活更值得我们现在就去更好的体验! 两年多的涤生大数据,认识了形形色色的小伙伴,陆续沟通下来6000多人,彼时…

数据库锁表原因、排查、解决

一.场景 场景1场景2二.原因三.排查四.解决方案 一.场景 场景1 锁表通常发生在DML( insert 、update 、delete ) A操作进行全量数据同步,对整个表的粒度进行上锁,导致B操作只能等待A操作完成才能进入插入数据。此时就出现了锁表…

Elasticsearch windows开箱即用【记录】

一、准备工作 安装ES之前要在本机安装好JDK,对应的兼容性见官网链接:https://www.elastic.co/cn/support/matrix ES官网链接:https://www.elastic.co/cn/, 我本机安装的是JDK8,测试使用的是7.3.0版本的ES和Kibana。 1、首先去…

PyTorch项目源码学习(3)——Module类初步学习

torch.nn.Module Module类是用户使用torch来自定义网络模型的基础,Module的设计要求包括低耦合性,高模块化等等。一般来说,计算图上所有的子图都可以是Module的子类,包括卷积,激活函数,损失函数节点以及相…

完成源示例

本主题演示如何创作和使用自己的完成源类&#xff0c;类似于 .NET 的 TaskCompletionSource。 completion_source 示例的源代码 下面的列表中的代码作为示例提供。 其目的是说明如何编写自己的版本。 例如&#xff0c;支持取消和错误传播不在此示例的范围内。 #include <w…

VR全景技术如何应用在城市发展,助力城市宣传展示

引言&#xff1a; 随着科技的不断发展&#xff0c;VR全景技术正逐渐渗透到各行各业&#xff0c;其中较为广泛的应用之一便是城市展示。那么VR全景技术如何运用在城市展示领域&#xff0c;这项技术给城市发展带来了哪些好处&#xff1f; 一. VR全景技术简介 1.什么是VR全景技术…

怎样制作一本旅游电子相册呢?

​随着数码技术的发展&#xff0c;旅游电子相册已成为越来越多旅游爱好者的必备工具。它不仅能让您随时随地欣赏自己的旅行回忆&#xff0c;还能分享给亲朋好友&#xff0c;甚至上传到社交媒体上&#xff0c;让更多人了解您的旅行故事。那么&#xff0c;如何制作一本精美的旅游…

Postman接口测试之断言,全网最细教程没有之一!

一、断言 在 postman 中我们是在Tests标签中编写断言&#xff0c;同时右侧封装了常用的断言&#xff0c;当然 Tests 除了可以作为断言&#xff0c;还可以当做后置处理器来编写一些后置处理代码&#xff0c;经常应用于&#xff1a; 【1】获取当前接口的响应&#xff0c;传递给…

【数据开发】BI数据报表之数据可测试性设计与分析

文章目录 1、什么是BI&数据报表2、什么是可测试性3、数据测试与方法3.1 数据准确性与对比&#xff08;重要&#xff09;3.2 数据安全性 1、什么是BI&数据报表 数据报表是一种数据可视化工具 用于将数据以图表、表格和其他可视化形式呈现出来&#xff0c;以便用户可以…

BRC20通证的深度科普:它的潜力与如何导入到bitget

​BRC-20通证是什么&#xff1f; BRC-20通证&#xff1a;比特币上的“变形金刚”&#xff1f;&#xff01;不依赖智能合约&#xff0c;它们就像拥有超能力的外星人&#xff0c;直接在比特币的最小单位——聪上刻写JSON代码。哈哈&#xff0c;这比把房子建在乐高积木上还要刺激…

逆水行舟 不进则退

目录 一、前言 二、2023年度总结 三、2024展望未来 一、前言 这是我从工作以来到现在最喜欢的一句话&#xff0c;我想把这句话送给自己也想送给大家。 2019年7月实习到现在已经过去了四年多&#xff0c;进入2024年也迎来了我工作生涯的第五个年头。 在这个行业里&#xff…

Docker五部曲之四:Docker Compose

文章目录 前言Compose应用程序模型Compose规范顶层属性servicenetworkvolumesconfigssecrets 环境变量.env文件environment属性主机shell中的环境变量 Profiles&#xff08;剖面&#xff09;启动剖面自动启动剖面和依赖项解析 多compose.yml文件共享与扩展构建规范构建属性 部署…

网站后台拿Webshell

通过注入或者其他途径&#xff0c;获取网站管理员账号和密码后&#xff0c;找到后台登录地址&#xff0c;登录后&#xff0c;寻找后台漏洞上传网页后门&#xff0c;获取网站的webshell webshell的作用是方便攻击者&#xff0c;webshel是拥有fso权限&#xff0c;根据fso权限的不…

论文阅读:Bayesian GAN

Bayesian GAN 点击访问paper 官方github 半监督学习对比算法 1.简介 贝叶斯 GAN&#xff08;Saatchi 和 Wilson&#xff0c;2017&#xff09;是生成对抗网络&#xff08;Goodfellow&#xff0c;2014&#xff09;的贝叶斯公式&#xff0c;我们在其中学习生成器参数 θ g \th…