python网络请求(一)socket
UDP创建Socket创建一个udp socketimport sockets = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)发送数据from socket import *udp_socket = socket(AF_INET, SOCK_DGRAM)udp_socket.sendto("你好".e...
在51单片机上用定时器实现按键长按、短按功能。
我们在项目中常常需要在只有一个按键的情况下,来实现长按执行某个功能,短按执行另一个功能。鉴于此,用51搭的核心板实测,亲测可行。好了,废话少说,简单粗暴,直接贴上程序结构。 主函数() { }在进入while大循环中,先要配置定时器。在while中核心是:使用两个if块判断,第一个if块判断按键是否按下,在第一个if块里面只进行按键按下标志位设置和定
Python爬虫之薪资分析
Python爬虫之薪资分析准备环境python3BeautifulSoupPyCharmEchart背景想看看智联招聘上各个行业的评价薪资是多少,最后生成个图表,最好还能排除培训机构,因为培训机构并不招人但是招聘广告上的工资却很高….最终效果从图上看出,我们会把需要行业的招聘信息抓取下来,然后讲他们的平均薪资记录下来生成柱状图,当点击其中的柱状图的...
python3爬虫踩的坑,后续会根据遇到的坑持续填补
1、 用scrapy框架去写爬虫时,如果在cmd中输入 scrapy crawl 爬虫名 之后 出现403(此状态码是禁止访问的意思),此时,首先考虑是不是spiders下的爬虫文件没有模拟成浏览器(header = {"User-Agent": "省略。。。"}),如果这一步也完成了,接着就要考虑可能是settings.py文件中的USER_AGENT没有去处注释(#)和模拟成浏览器了。2、ss...
MySQL数据库常见面试题总结
1、数据库中的范式:(1)第一范式(1NF):指表的列不可再分,数据库中表的每一列都是不可分割的基本数据项,同一列中不能有多个值;(2)第二范式(2NF):在 1NF 的基础上,还包含两部分的内容:一是表必须有一个主键;二是表中非主键列必须完全依赖于主键,不能只依赖于主键的一部分;(3)第三范式(3NF):在2NF 的基础上,消除非主键列对主键的传递依赖,非主键列必须直接依赖于主键。(4)BC范式(BCNF):在 3NF 的基础上,消除主属性对于码部分的传递依赖2、SQL语句的执..
MySQL数据库:参数优化
数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级。所以,要优化数据库,首先第一步需要优化的就是 IO,尽可能将磁盘IO转化为内存IO。本文先从 MySQL 数据库IO相关缓存参数的角度来介绍可以通过哪些参数进行IO优化:一、参数说明:1、query_cache_size / query_cache_type (global):Query cache 主要.
MySQL 基本用法(二)多表查询
数据库1. 数据完整性作用:保证用户输入的数据保存到数据库中是正确的。 确保数据的完整性 = 在创建表时给表中添加约束 完整性的分类:实体完整性域完整性引用完整性1.1 实体完整性实体: 即表中的一行(一条记录)代表一个实体(entity) 实体完整性的作用:标识每一行数据不重复 约束类型: 主键约束(primary key) 唯一约束(unique)...
Gradle笔记1之Groovy基础语法
Gradle01gradle概述groovy和gradlegroovy是一种基于JVM的敏捷开发语言,它结合了Python,Ruby和Smalltalk的许多特性,同时它的代码能够和Java代码很好的结合,并且由于它可以运行在JVM上,所以Groovy可以直接使用其他的Java的jar包Groovy语言=Java语言的扩展+众多脚本语言的语法。运行在JVM虚拟机上Gra...
深入探究Java动态代理
深入探究Java动态代理深入探究Java动态代理1. Spring实现AOP2. JDK动态代理3. 动态代理详解ProxyInvocationHandler4. 深入探究代理类4.1 代理类的代码4.2 invoke方法的第一个参数题外话提起Java的动态代理,大家首先就会想到Spring的AOP,Spring在实现AOP的时候,确实有时候是使...
使用AndroidStudio查看并调试Android源码
使用AndroidStudio查看并调试Android源码使用AndroidStudio查看并调试Android源码0.基础环境1. 操作系统2. Java3. Android源码1. 编译源码初始化编译环境AndroidP的终端检查源码AndroidO的终端检查源码选择编译目标编译验证2. 导入源码到AndroidStudioAndroidStudio的初期配置源码导入1. 在/etc/sysc...
Android使用aar封装自定义组件
在Android开发的时候,有时候我们需要封装自定义组件,并且希望将封装好的自定义组件到处为一个lib库,实现给其他程序使用的效果,而传统的Jar包并不能很好的实现这个需求,因为传统的Jar包不能很好的支持res中的各个xml和R文件,这时我们就需要打包成aar库来使用。生成AAR库首先我们需要生成一个AAR的库,这里以一个简单的自定义组件为例,来生成AAR库.创建AndroidLib首先...
Android编译系统(一、环境与命令)
1. 概述Android 编译系统是Android源码的一部分,在学习Android编译系统之前,可以参照使用AndroidStudio查看并调试Android源码 来搞定源码和编译环境Android Build 系统用来编译 Android 系统,Android SDK 以及相关文档。该系统主要由 Make 文件,BP文件,Shell 脚本以及 Python 脚本组成,其中最主要的是 Mak...
Activity LaunchMode解析
Activity LaunchModeLaunchModeAndroid中Activity的启动模式有四种:standard(默认选项)singleTopsingleTasksingleInstance可以在AndroidManifest.xml中通过指定activity标签的android:launchMode属性来改变:<activity android:name=".SecondActivity" android:launchMode="singleTop"/>
((void(*)())(0xc014))()
最近看代码发现自己指针那块知识又还回给老师了,下面贴出一个代码:((void(*)())(0xc014))()代码解释如下(纯属个人见解):引用《C专家编程》C语言声明优先级规则A 声明从它的名字开始读取,然后按照优先级顺序依次读取。B 优先级从高到低依次是: B.1 声明中被括号括起的那部分 B.2 后缀操作符: ...
Kotlin协程解析
Kotlin协程解析协程是什么协程是什么?协程是一种在程序中处理并发任务的⽅案,也是这种⽅案的一个组件。它和线程属于一个层级的概念,是一种和线程不同的并发任务解决⽅案:一套系统(可以是操作系统,也可以是一种编程语⾔)可以选择不同的⽅案来处理并发任务,你可以使⽤线程,也可以使⽤协程。Kotlin的协程是什么?Kotlin 的协程(确切说是 Kotlin for Java 的协程)是一个线程框架,其实本质上与AsyncTask(已废弃)和Executor(Java)没有什么区别
今日推荐
周排行