python爬虫(3)

上一次的代码结果如下:

当然会有一点点不一样是正常的表现,因为这个图本身使用随机数rand函数做的,用其他两种随机函数出来的结果也不会完全相同。

继上节这次带来的是数组的重塑和转置

1、一维数组的重塑

在NumPy模块中的reshape()函数可以在不改变数组元素内容和个数的情况下重塑数组形状

代码示例如下:

import numpy as np

c = np.array([1,2,3,2,3,4,4,5,6,9,8,4])

o =c.reshape(3,4)

p =c.reshape(4,3)

print(o)

print(p)

其中这里reshape(行数,列数)

结果如下:

2、多维数组的重塑

这里reshape也可以改变多维数组的形状

import numpy as np

c = np.array([1,2,3,2,3,4,4,5,6,9,8,4])

o =c.reshape(3,4)

p =o.reshape(4,3)

print(o)

print(p)

这里是将上个例子进行改变可以发现还是可以改变的

结果如下:

其中将多维数组改编为一维数组也是有办法的

flatten()和ravel()函数

示例如下:

import numpy as np

c = np.array([1,2,3,2,3,4,4,5,6,9,8,4])

o =c.reshape(3,4)

p =o.reshape(4,3)

print(o.flatten())

print(p.ravel())

结果如下:

数组的转置:

T属性:就是将数组的行和列进行交换

import numpy as np

c = np.array([1,2,3,2,3,4,4,5,6,9,8,4])

o =c.reshape(3,4)

print(o)

print(o.T)

结果如下:

当然有一个与T属性效果相同的函数叫做transpose()

例子如下:

import numpy as np

c = np.array([1,2,3,2,3,4,4,5,6,9,8,4])

o =c.reshape(3,4)

print(o)

c1=np.transpose(o)

print(c1)

结果如下:

为大家带来一串代码:

def lcs(str1, str2, dp):

    len1 = len(str1)

    len2 = len(str2)

    for i in range(1, len1+1):                          

        for j in range(1, len2+1):

            if str1[i-1] == str2[j-1]:                  

                dp[i][j] = dp[i-1][j-1] + 1

            else:

                dp[i][j] = max(dp[i-1][j], dp[i][j-1])

    return dp[len1][len2]                              

def getlcs(str1, str2, dp):

    i = len(str1)

    j = len(str2)

    res = " "

    while(i != 0 and j != 0):                          

        if(str1[i-1] == str2[j-1]):

            res += str1[i-1]

            i -= 1

            j -= 1

        else:

            if(dp[i][j] == dp[i-1][j]):                

                i -= 1

            else:

                j -= 1

    return res[::-1]                                    

str1 = "bdcaba"

str2 = "abcbda"

lenA = len(str1)

lenB = len(str2)

dp = [[0 for i in range(lenA+1)] for j in range(lenB+1)]  

length = lcs(str1, str2, dp)

print("最长公共子序列长度为:", length)

print("dp表为:", dp)

res = getlcs(str1, str2, dp)

print("最长公共子序列为:", res)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

黑马点评-附近商户实现

GEO数据结构 Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,根据经纬度来检索数据。 GEO本质上是基于sortedSet实现的,在Sorted Set中,每个成员都是与一个分数(score)相关联的,这个分数用于对成员进行排序…

LeetCode-102.题: 二叉树的层序遍历(原创)

【题目描述】 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 【题目链接…

如何将任何文本转换为概念图(GC)

原文地址:how-to-convert-any-text-into-a-graph-of-concepts 使用 Mistral 7B 将任何文本语料库转换为知识图的方法 2023 年 11 月 10 日 使用递归 RAG 方法来实现具有多跳推理的 QnA,以回答基于大型文本语料库的复杂查询。 知识图增强生成与递归 R…

goby的安装和使用

简介 Goby是一款基于网络空间测绘技术的新一代网络安全工具,它通过给目标网络建立完整的资产知识库,进行网络安全事件应急与漏洞应急。 Goby可提供最全面的资产识别,目前预置了超过10万种规则识别引擎,能够针对硬件设备和软件业…

深入探索Docker数据卷:实现容器持久化存储的完美方案(下)

🐇明明跟你说过:个人主页 🏅个人专栏:《Docker入门到精通》 《k8s入门到实战》🏅 🔖行路有良友,便是天堂🔖 目录 四、Docker数据卷的高级管理 1、数据卷的生命周期管理 2、数据…

2001-2022年上市公司利润表数据

2001-2022年上市公司利润表数据 1、时间:2001.12.31-2022.12.31 2、范围:上市公司 3、指标:证券代码、证券简称、统计截止日期、报表类型、投资收益、其中:对联营企业和合营企业的投资收益、公允价值变动收益、营业利润、其他综…

网关数据采集解决方案-天拓四方

随着物联网技术的快速发展,数据采集已成为企业运营、管理和决策的重要支撑。网关作为连接不同网络的关键设备,其在数据采集过程中发挥着至关重要的作用。本文将详细介绍一种网关数据采集解决方案,旨在确保数据采集的高效性、准确性和安全性。…

「解析文件流,Java之FileOutputStream助您轻松操作文件!」

🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!&#xf…

【Java项目介绍和界面搭建】拼图小游戏——作弊码、查看完整图片

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏 …

HarmonyOS 数据持久化 关系型数据库之 初始化操作

上文 HarmonyOS 数据持久化之首选项 preferences 我们有说用户首选项 但它只能处理一些比较简单的数据类型结构 的持久化处理 如果是一些批量较大 结构较为复杂的数据结构 那么 首选项就无法满足了 我们就要选择 关系型数据库 通过 SQLite 组件实现的一种本地数据库&#xff0…

TCP包头

TCP包头: 1.序号:发送端发送数据包的编号 2.确认号:已经确认接收到的数据的编号(只有当ACK为1时,确认号才有用) TCP为什么安全可靠: 1.在通信前建立三次握手连接 SYN SYNACK ACK SYN是TCP包头的一个字段 tcp.port 端口号 抓包数据 2.在通信过程中通过序…

JavaWeb笔记 --- 一JDBC

一、JDBC JDBC就是Java操作关系型数据库的一种API DriverManager 注册驱动可以不写 Class.forName("com.mysql.jdbc.Driver"); Connection Statement ResultSet PrepareStatement 密码输入一个SQL脚本,直接登录 预编译开启在url中 数据库连接池

指针进阶(下)指针实操

sizeof 和 strlen 首先我们来复习一下sizeof 和 strlen 的区别。 sizeof 是操作符&#xff0c;只关注内存中存放的数据的大小&#xff0c;并不会参与sizeof 括号内部的计算。注意它的单位是字节 #include <stdio.h>int main() {int a 10;printf("%d\n", size…

USB2.0设备检测过程信号分析

1.简介 USB设备接入的Hub端口负责检测USB2.0设备是否存在和确定USB2.0设备的速度。检测设备是否存在和确定设备速度涉及一系列的信号交互&#xff0c;下面将分析该过程。 2.硬件 USB低速设备和全速/高速设备的连接器在硬件结构上有所不同&#xff0c;而主机或者Hub接收端连接…

redis中的zset的原理

一、zset有序集合的原理 如果有序集合元素个数少于128个且元素值小于64字节&#xff0c;使用压缩列表&#xff08;新版本已经废弃压缩列表改用listpack数据结构了&#xff09; 如果不满足上述条件&#xff0c;采用跳表作为redis的底层数据结构 二、压缩列表 1.由连续内存块组…

一张照片一键换脸:无需数据集和训练 | 开源日报 No.186

s0md3v/roop Stars: 23.6k License: AGPL-3.0 roop 是一个一键换脸的项目。 该项目可以通过一张目标人物的照片&#xff0c;实现对视频中人脸进行替换&#xff0c;无需数据集和训练。其主要功能、关键特性和核心优势包括&#xff1a; 可以在计算机上运行&#xff0c;并支持 C…

mysql 8.0 日志文件无权限问题处理

无论如何修改权限总是报这个日志文件权限问题。 解决方法 输入指令&#xff1a; setenforce 0 systemctl restart mysgld

csgo搬砖核心步骤,月入1000-10000你也可以的!

近年网络游戏产业的爆炸式增长&#xff0c;虚拟物品的交易需求也越来越大&#xff0c;为了满足虚拟物品的交易需求&#xff0c;网络游戏交易平台开始兴起和发展。网游交易平台的交易项目包括帐号交易、游戏币交易、装备交易这几种主要交易项目&#xff0c;其交易模式可分为C2C模…

01、python_爬虫的相关概念

一、什么是爬虫&#xff1f; 爬虫是网络爬虫的简称&#xff0c;指的是一种自动化程序&#xff0c;用于在互联网上抓取信息。爬虫的核心工作包括爬取网页、解析数据和存储数据。 通俗来说就是&#xff1a;通过一个程序&#xff0c;根据url(http://taobao.com)进行爬取网页&…

模拟实现strlen函数

一、逐个计数法 #include<assert.h> #include<stdio.h>size_t my_strlen(const char* p) {int count 0;assert(p);//断言while (*p ! \0){p;count;}return count; }int main() {char str[] "hello world";size_t len my_strlen(str);printf("%d…