imgs

Python 5 行代码的神奇操作

拟墨画扇 提交于 2020-07-27 09:45:32
Python 语言实现功能直接了当,简明扼要,今天咱们就来一起看看 Python 5 行代码的神奇操作! 1、古典兔子问题 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:1097524789 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? def count (n): if ( 1 == n or 2 == n): return 1 elif (n >= 2): return count(n - 2) + count(n - 1) print(count( 36) * 2) 2、加法计算器 num1 = input( "第一个数:") num2 = input( "第二个数:") new_num1 = int( num1) new_num2 = int( num2) print( new_num1 + new_num2) 3、循环问答 while( True): question = input() answer = question.replace( '吗', '呢')

玩一玩Numpy处理图像

吃可爱长大的小学妹 提交于 2020-07-27 09:26:21
在python中进行图像处理,我们有三个好工具:OpenCV, SciKit-Image 和 Pillow。但是在本文中,为了理解一些简单图像处理技术的基础,我们将使用numpy。所以这也是练习numpy的良好教程。 1.原图 Python Imaging Library (PIL)是python下的图像处理模块,支持多种格式,并提供强大的图形与图像处理功能。Python3.x中需要先安装: pip install pillow In [4]: from PIL import Image im = Image . open ( "pubu.jpg" ) im . show () 2.用numpy加载图像数据 In [5]: import numpy as np imgs = np . array ( im ) imgs . shape Out[5]: (711, 400, 3) In [6]: imgs [: 2 ,: 2 ,:] Out[6]: array([[[27, 43, 33], [22, 35, 26]], [[28, 45, 37], [27, 42, 35]]], dtype=uint8) 3.分离通道 分离通道将每个像素点中RGB三色中的其他两位分别置位0。单像素单通道的值是0~255之间的整数,故而这里使用uint8 2,3为置位0,则为红色R In [7]:

Tensorflow 中(批量)读取数据的案列分析及TFRecord文件的打包与读取

回眸只為那壹抹淺笑 提交于 2020-07-24 13:58:13
内容概要: 单一数据读取方式:   第一种: slice_input_producer() # 返回值可以直接通过 Session.run( [images, labels] )查看,且第一个参数必须放在列表中,如[...] [images, labels] = tf.train. slice_input_producer ( [images, labels] , num_epochs=None, shuffle=True)   第二种: string_input_producer() # 需要定义文件读取器,然后通过读取器中的 read()方法来获取数据(返回值类型 key,value),再通过 Session.run( value )查看 file_queue = tf.train. string_input_producer ( filename , num_epochs=None, shuffle=True) reader = tf.WholeFileReader() # 定义文件读取器 key, value = reader.read(file_queue) # key:文件名;value:文件中的内容    !!!num_epochs=None,不指定迭代次数,这样文件队列中元素个数也不限定(None*数据集大小)。   !!!如果 它 不是 None

爬虫—分析Ajax爬取今日头条图片

独自空忆成欢 提交于 2020-05-08 03:46:58
  以今日头条为例分析Ajax请求抓取网页数据。本次抓取今日头条的街拍关键字对应的图片,并保存到本地 一,分析   打开今日头条主页,在搜索框中输入街拍二字,打开开发者工具,发现浏览器显示的数据不在其源码里面。这样可以出初步判断这些内容是由 Ajax加载,然后使用JavaScript渲染出来的。            切换到XHR过滤选项卡,查看其Ajax请求。点击其中一条进去,进入data展开,发现其中一个title字段对应的值正好是页面中的某条数据的标题。再查看其他数据,正好也是一一对应的,这说明这些数据确实是由Ajax加载的。                本次的目的是抓取其中的图片内容,data中每个元素就是一篇文章,元素中的image_list字段包含了该文章的图片内容。它是一个列表形式,包含了所有的图片列表。我们只需要将列表中的url字段下载下来就好了,每篇文章都创建一个文件夹,文件夹名称即文章标题。              在使用Python爬取之前还需要分析一下URL的规律。切换到Headers选项卡,查看Headers信息。可以看到,这是一个GET请求,请求的参数有aid,app_name,offset,format,keyword,autoload,count,en_qc,cur_tab,from,pd,timestamp。继续往下滑动,多加载一些数据

小程序实践(二):swiper组件实现轮播图效果

二次信任 提交于 2020-05-07 17:49:43
swiper组件类似于Android中的ViewPager,实现类似轮播图的效果,相对于Android的Viewpager,swiper实现起来更加方便,快捷。 效果图: 首先看下swiper支持的属性: ------------------------------------------------------------------------------------ 具体实现轮播功能: 一、添加轮播图片素材    在项目根目录下新建一个目录用于存储图片资源,目录名随意    二、页面目录下的js文件添加数据源    在data属性里添加imgs列表,列表item项为图片在项目中的位置(关键:红色加粗部分代码) Page({ /* * * 页面的初始数据 */ data: { imgs:[ "../../images/aaa.jpg","../../images/bbb.jpg","../../images/ccc.jpg" ] }, /* * * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /* * * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /* * * 生命周期函数--监听页面显示 */ onShow: function () { }, /* * *

Java之反射

风格不统一 提交于 2020-05-06 19:30:49
一、反射的概述 1. 反射的简介 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射。 通常的方式:引入需要的“包类”名称---->通过“new”实例化---->获得实例化对象 反射的方式:实例化对象---->getClass()方法---->得到完整的“包类”名称 框架 = 注解 + 反射 + 设计模式 2. 反射动态性体现 只有当程序运行时我们才能知道调用的类 @Test public void test2(){ for(int i = 0;i < 100;i++){ int num = new Random().nextInt(3);//0,1,2 String classPath = ""; switch(num){ case 0: classPath = "java.util.Date"; break; case 1: classPath = "java.lang.Object"; break; case 2:

Java之IO流

不羁岁月 提交于 2020-05-04 23:41:37
一、File类的使用 1. File类的理解 File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)。 File类声明在java.io包下:文件和文件路径的抽象表示形式,与平台无关。 File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成。 想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。 后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的"终点"。 2. File的实例化 2.1 常用构造器 File(String filePath) File(String parentPath,String childPath) File(File parentFile,String childPath) 代码示例 : @Test public void test1() { //构造器1 File file1 = new File("hello.txt"); File file2 = new File("E:\\workspace_idea\\JavaSenic\\IO\\hello.txt"); System.out.println(file1);

java 实现基于opencv全景图合成

﹥>﹥吖頭↗ 提交于 2020-05-04 23:03:54
因项目需要,自己做了demo,从中学习很多,所以分享出来,希望有这方面需求的少走一些弯路,opencv怎么安装网上教程多多,这里不加详细说明,我安装的opencv-3.3.0 如上图所示,找到相应的jar包,这里讲一下如何这个 jar如何导入Maven仓库 mvn install:install-file -Dfile=D:\opencv- 3.0 . 0 \opencv\build\java\opencv- 300 .jar -DgroupId=com.suibian -DartifactId=opencv- 300 -Dversion= 3.3 . 0 -Dpackaging=jar -DgeneratePom= true -DcreateChecksum= true <groupId>com.suibian</groupId> <artifactId>opencv- 300 </artifactId> <version> 3.3 . 0 </version> 好了,这样java可以通过这个jar操作opencv,那我们看一下,当然你能这样想,说明你很单纯,让我们看一下opencv 中includ中的路径和jar中包的对比 哈哈,全景图的关键 stitching 并没有,而且面向java的2015以后就一直没有更新,如下图所示一个全景图(傻瓜)合成的关键类没有,但是C+

Java实现AES ECP PKCS5Padding加解密工具类

◇◆丶佛笑我妖孽 提交于 2020-05-01 08:43:07
Java 实现一个 AES/ECB/PKCS5Padding 加解密算法工具类 加密算法: AES 模式: ECB 补码方式: PKCS5Padding <!-- more --> 1. 工具类 import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; import org.springframework.util.Base64Utils; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; import java.io.BufferedInputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import java.security.MessageDigest; /** * Created by @author yihui in 19:12 20/1/2. */ @Slf4j public class EncryptUtil { private static final String KEY_ALGORITHM = "AES"; /** * 算法/模式/补码方式 */

性能分析-java程序篇之案例-工具和方法

无人久伴 提交于 2020-05-01 04:28:03
1. 背景说明 线上服务响应时间超过40秒,登录服务器发现cpu将近100%了(如下图),针对此问题,本文说明排查过程、工具以定位具体的原因。 <img src="https://bingjava-blog.oss-cn-beijing.aliyuncs.com/site_imgs/perf01/性能分析01.png " width = "600" height = "200" alt="cpu使用率" align=center /> # 2. 分析排查过程 此类问题的排查,有两款神器可用,分别是async-profiler和arthas,async-profiler主要用于全局分析,通过此工具可以找到热点方法, 再用arthas对此热点方法进行详细的追踪,trace命令可以追踪方法的具体耗时,watch命令可以查看方法的出入参数,在结合源代码可以比较 方便定位到问题原因。下面记录排查过程: ## 2.1. 用async-profiler生成火焰图 到下载后,解压后如下所示: <img src="https://bingjava-blog.oss-cn-beijing.aliyuncs.com/site_imgs/perf01/java-perf-02.png" width = "600" height = "100" alt="async-profiler安装目录" align