python爬虫学习第二天----类型转换

🎈🎈作者主页: 喔的嘛呀🎈🎈
🎈🎈所属专栏:python爬虫学习🎈🎈
✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心哦!✨✨ 

目录

类型转换

 转换成为整数

 转换成为浮点数

 转换成为字符串

转换成为布尔值

字符串转换为数字

数字转换为字符串

字符串转换为日期

日期转换为字符串

其他类型转换


 

类型转换

当你在编写Python爬虫时,类型转换是一个常见的操作,因为你经常需要处理从网页中提取的数据,将其转换为适合你处理的类型。在本文中,我们将深入探讨Python中的类型转换,包括字符串转换为数字、日期,以及其他一些常见的类型转换。

函数说明
int(x) 将x转换为一个整数
float(x)将对象 x 转换为字符串
str(x)将对象 x 转换为字符串
bool(x)将对象x转换成为布尔值

 转换成为整数

print(int("123"))  # 123 将字符串转换成为整数
print(int(123.78))  # 123 将浮点数转换成为整数
print(int(True))  # 1 布尔值True转换成为整数是 1
print(int(False)) # 0 布尔值False转换成为整数是 0
# 以下两种情况将会转换失败
'''
123.456 和 12ab 字符串,都包含非法字符,不能被转换成为整数,会报错
print(int("123.456"))
print(int("12ab"))

 转换成为浮点数

f1 = float("12.34")
print(f1)   # 12.34
print(type(f1)) # float 将字符串的 "12.34" 转换成为浮点数 12.34
f2 = float(23)
print(f2)  # 23.0
print(type(f2)) # float 将整数转换成为了浮点数

 转换成为字符串

str1 = str(45)
str2 = str(34.56)
str3 = str(True)
print(type(str1),type(str2),type(str3))

转换成为布尔值

print(bool(''))
print(bool(""))
print(bool(0))
print(bool({}))
print(bool([]))
print(bool(()))

字符串转换为数字

在爬虫中,你经常需要将从网页中提取的数字数据转换为整数或浮点数,以便进行数值计算或比较。你可以使用**int()float()**函数来实现这一转换。

num_str = "123"
num_int = int(num_str)
print(num_int)  # 输出:123float_str = "3.14"
num_float = float(float_str)
print(num_float)  # 输出:3.14

数字转换为字符串

有时候,你可能需要将数字转换为字符串,比如将爬取的数字数据保存到文件或数据库中时。你可以使用**str()**函数将数字转换为字符串。

num_int = 123
num_str = str(num_int)
print(num_str)  # 输出:"123"num_float = 3.14
float_str = str(num_float)
print(float_str)  # 输出:"3.14"

字符串转换为日期

当你从网页中提取日期数据时,通常会得到一个字符串表示的日期,你可以使用**strptime()**方法将其转换为Python的日期对象。

from datetime import datetimedate_obj = datetime.now()
date_str = date_obj.strftime("%Y-%m-%d %H:%M:%S")
print(date_str)  # 输出:当前日期和时间的字符串表示

日期转换为字符串

如果你需要将日期对象转换为特定格式的字符串,可以使用**strftime()**方法。

 

from datetime import datetimedate_obj = datetime.now()
date_str = date_obj.strftime("%Y-%m-%d %H:%M:%S")
print(date_str)  # 输出:当前日期和时间的字符串表示

其他类型转换

除了上述类型转换外,你可能还会遇到其他类型的转换需求。比如将列表转换为字符串、字符串转换为列表,以及将字典转换为字符串、字符串转换为字典等。你可以使用**join()split()json.dumps()json.loads()**等方法来实现这些转换。

# 将列表转换为字符串
list_data = ["apple", "banana", "cherry"]
str_data = ", ".join(list_data)
print(str_data)  # 输出:"apple, banana, cherry"# 将字符串转换为列表
str_data = "apple, banana, cherry"
list_data = str_data.split(", ")
print(list_data)  # 输出:['apple', 'banana', 'cherry']# 将字典转换为字符串
dict_data = {"name": "Alice", "age": 30}
str_data = json.dumps(dict_data)
print(str_data)  # 输出:'{"name": "Alice", "age": 30}'# 将字符串转换为字典
str_data = '{"name": "Alice", "age": 30}'
dict_data = json.loads(str_data)
print(dict_data)  # 输出:{'name': 'Alice', 'age': 30}

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

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

相关文章

leetcode LCR121.寻找目标值-二维数组

目录 问题描述示例具体思路思路一思路二 代码实现 问题描述 m*n 的二维数组 plants 记录了园林景观的植物排布情况,具有以下特性: 每行中,每棵植物的右侧相邻植物不矮于该植物; 每列中,每棵植物的下侧相邻植物不矮于该…

Hive SQL必刷练习题:留存率问题(*****)

留存率: 首次登录算作当天新增,第二天也登录了算作一日留存。可以理解为,在10月1号登陆了。在10月2号也登陆了,那这个人就可以算是在1号留存 今日留存率 (今日登录且明天也登录的用户数) / 今日登录的总…

一些恶意样本的流量分析学习

Trickbot Trickbot 是一种自 2016 年以来一直在感染受害者的信息窃取者和银行恶意软件。Trickbot通过恶意垃圾邮件(malspam)分发,也由其他恶意软件(如Emotet,IcedID或Ursnif)分发。 分析来自恶意垃圾邮件…

银行5G短消息应用架构设计

(一)RCS简介 1.1 RCS的提出与标准制定 RCS(Rich Communication Services & Suite,富媒体通信)是GSMA(Groupe Speciale Mobile Association,全球移动通信系统协会)在2008年提出的一种通讯方式,RCS融合了语音、消息…

Bytebase 2.14.1 - 分支 (Branching) 功能支持 Oracle

🚀 新功能 分支 (Branching) 功能支持 Oracle。为 SQL 编辑器添加了项目选择器。 新增 SQL 审核规范: 禁止混合 DDL、DML 语句。禁止对同一张表进行不同类型的 DML 变更 (UPDATE,INSERT,DELETE)。 🔔 重大变更 工作空间设置中的「数据访问…

【已解决】MySQL:常用的除法运算+精度处理+除数为0处理

目录 问题现象: 问题分析: 拓展: 1、除法运算: 拓展:MySQL中常用的几种除法运算 1、取整除法 2、浮点数除法 3、取余除法 4、向上取整除法 5、向下取整除法 2、运算结果的精度处理 1.1、浮点数 1.2、总位数 1.3、…

电脑哥的励志创业路:蹭别人的电脑做抖店

我是王路飞。 没有一步到位的创业项目,也没有一击必中的解决方法,有的只是需要时刻解决的当下问题。 做事/创业/成长/生活/人生,都不要追求百分百的圆满,不要抱有一帆风顺的幻想,不要期待十全十美的结果。 它们的第…

Visual Studio QT6 工程引入组件模块,例如:QtXml

QT 工程引入 QtXml QT 版本 6.6.1 Visual Studio 版本 Microsoft Visual Studio Community 2022 (64 位) - Current 版本 17.7.5 打开 Visual Studio 项目工程选择 工具栏 - 扩展 - QT VS Tools -Qt Project Settings 勾选 xml 后点击确定 点击应用即可 注意:配置环…

day44 动态规划part6

完全背包 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。 完全背包和01背包问题唯一不同…

外部普米集中监控多个Prometheus实例:Prometheus Agent 模式与Prometheus 联邦模式 超级详细

外部普米集中监控多个Prometheus实例 Prometheus Agent 模式-使用推送方式来监控1.外部Prometheus配置1.需要开放端口,在启动时,需要配置开放监听端口2.添加prometheus启动参数3.修改配置后重启prometheus即可 2.各个节点的普米配置1.修改prometheus.yml…

HiveSQL一本通 - 案例实操

文章目录 0.HiveSQL一本通使用说明6.综合案例练习之基础查询6.1 环境准备创建数据表数据准备加载数据 6.2 简单查询练习1.查询姓名中带“山”的学生名单2.查询姓“王”老师的个数3.检索课程编号为“04”且分数小于60的学生的分数信息,结果按分数降序排列4.查询数学成…

vue.js——学习计划表

1&#xff09;准备工作 ①打开D:\vue\chapter02\ learning_schedule 目录&#xff0c;找到 index.html 文件。 在文件中引 入BootStrap 样式文件&#xff0c;具体代码如下 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8&qu…

【Linux】权限管理

文章目录 前言1.权限访问者的分类2.文件类型与访问权限3.文件权限值的表达方式4.文件访问权限的相关设置5.file指令6.目录权限理解与漏洞7.粘滞位的理解 前言 Linux下有两种用户&#xff1a;超级用户(root)和普通用户 超级用户&#xff1a;可以再linux系统下做任何事情&#x…

Vue3 + Vite + TS + Element-Plus + Pinia项目(3)--新建路由

1、在src文件夹下新建router文件夹后&#xff0c;创建index.ts文件 2、具体如下 import { createRouter, createWebHashHistory } from vue-routerconst router createRouter({history: createWebHashHistory(),routes: [{path: "/index",component: () > impor…

关于YOLOv9项目中使用已有模块自由改进的教程

专栏介绍&#xff1a;YOLOv9改进系列 | 包含深度学习最新创新&#xff0c;助力高效涨点&#xff01;&#xff01;&#xff01; 1. 文件说明 在YOLOv5-v9&#xff0c;模型的结构是以yaml文件的存储。我们可以在原有的yaml基础上增、减、改模块&#xff0c;创作我们自己的模型。 …

ASM四部曲之一:什么是ASM

文章目录 前言什么是.class文件什么是ASM概述作用域模型基于ASM的程序架构 ASM库结构 前言 本文翻译自ASM官方文档。 什么是.class文件 Java字节码文件&#xff08;.class&#xff09;是Java编译器编译Java源文件&#xff08;.java&#xff09;产生的目标文件。它是一种8位字…

基于SpringBoot+Layui的社区物业管理系统

项目介绍 社区物业管理系统是基于java程序开发,本系统分为业主和管理员两个角色 业主可以登陆系统,查看车位费用信息,查看物业费用信息,在线投诉,查看投诉,在线报修; 管理员可以车位收费信息,物业收费信息,投诉信息,楼宇信息,房屋信息,业主信息,车位信息,抄表信…

芯片设计工程师必备基本功——《Verilog+HDL应用程序设计实例精讲》

进入芯片行业需要学习哪些基本功呢&#xff1f;其实芯片设计工程师的技能是通过多年的经验学习的。在您开始作为芯片设计工程师工作之前&#xff0c;很难给出一个需要的全面的单一列表&#xff0c;也不可能学习所有内容。话虽如此&#xff0c;但您开始芯片设计师职业生涯时必须…

瑞萨杯(一)

基础信息 RA6M5&#xff1a;ARM V8架构&#xff0c;24MHz外置晶振&#xff0c;200MHz主频 SCI&#xff08;Serial Communications Interface&#xff09;&#xff0c;意为串行通信接口 参考链接&#xff1a; 【瑞萨RA系列FSP库开发】RASCKeil的环境搭建_瑞萨ra mdk-CSDN博客…

Web安全基础入门+信息收集篇

教程介绍 学习信息收集&#xff0c;针对域名信息,解析信息,网站信息,服务器信息等&#xff1b;学习端口扫描&#xff0c;针对端口进行服务探针,理解服务及端口对应关系&#xff1b;学习WEB扫描&#xff0c;主要针对敏感文件,安全漏洞,子域名信息等&#xff1b;学习信息收集方法…