num

全国疫情精准定点动态更新(.net core)

删除回忆录丶 提交于 2020-02-12 12:48:18
前言 疫情远比我们在年初想的发展迅速,在过年前还计划着可以亲戚聚聚,结果都泡汤了,开始了自家游。 在初三的时候,看到那个丁香医生,觉得不够详细,比如说我想看下周边城市的疫情情况,但是我地理不好,根本不清楚其他城市的位置。 当时我想的是做一张地图标注各个城市的数量,及严重程度。然后我用python去爬虫,晚上成功了,第二点防爬了。当然拦不住我的,我使用元素爬取的方式也行。 但是这种方式需要运行crome内核渲染,然后要隔一段时间更新,我已经放弃了我买的windows,原因是贵,且自己贫苦。 当时我认为疫情很快会得到控制,所以我就放弃了。 前几天在博客园看到有人写了一个爬取的demo,那个api返回的数据相当标准,所以我有产生了想法。 看下我做的效果吧: 密密麻麻的,这是啥呢?完全没有可视度。 放大分析下。 1.我根据中国不同的省份,根据不同人数显示不同的颜色,且放上去会显示当前疫情。 颜色可以通过左侧控制,上下有两个箭头可以上拉下拉,选取区域,如下图: 2.当地图放大后,可以看到更多的细节,比如说如果数量达到100后我就会让当前位置,加入警报,当然随着数量越多该位置的点更大,且冒泡提升更大。 放大后效果如下图: 好了看下大概思路吧,本博客只介绍思路,项目开源,写的随意,不要介意,地址在末尾贴出。 正文 第一步 我想的肯定是获取数据,在前几天看到一篇博客,上面介绍一个非常标准的api

南瓜书《动手机器学习公益训练营》-lesson1

二次信任 提交于 2020-02-12 12:29:22
线性回归 主要内容包括: 1. 线性回归的基本要素 模型 为了简单起见,这里我们假设价格只取决于房屋状况的两个因素,即面积(平方米)和房龄(年)。接下来我们希望探索价格与这两个因素的具体关系。线性回归假设输出与各个输入之间是线性关系: p r i c e = w a r e a ⋅ a r e a + w a g e ⋅ a g e + b \mathrm{price} = w_{\mathrm{area}} \cdot \mathrm{area} + w_{\mathrm{age}} \cdot \mathrm{age} + b p r i c e = w a r e a ​ ⋅ a r e a + w a g e ​ ⋅ a g e + b 数据集 我们通常收集一系列的真实数据,例如多栋房屋的真实售出价格和它们对应的面积和房龄。我们希望在这个数据上面寻找模型参数来使模型的预测价格与真实价格的误差最小。在机器学习术语里,该数据集被称为训练数据集(training data set)或训练集(training set),一栋房屋被称为一个样本(sample),其真实售出价格叫作标签(label),用来预测标签的两个因素叫作特征(feature)。特征用来表征样本的特点。 损失函数 在模型训练中,我们需要衡量价格预测值与真实值之间的误差。通常我们会选取一个非负数作为误差

Java第三章练习题

痞子三分冷 提交于 2020-02-12 12:15:22
分析 数值:a b c delt 解 步骤: 1、提示输入a b c 2、计算delt的值 3、利用公式求方程的解 import java.util.Scanner; class Demo3_1{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); System.out.println("请输入a b c的值:"); double a = scanner.nextDouble(); double b = scanner.nextDouble(); double c = scanner.nextDouble(); double delt=b*b-4*a*c; if(delt>0){ double r1=(-b+Math.sqrt(delt))/(2*a); double r2=(-b-Math.sqrt(delt))/(2*a); System.out.printf("r1=%.2f,r2=%.2f",r1,r2); }else if(delt==0){ double r=(-b+Math.sqrt(delt))/(2*a); System.out.printf("r=%.2f",r); }else{ System.out.println("无实属根!"); } } }

直播

浪尽此生 提交于 2020-02-12 12:02:55
// // Created by jihuayu on 2020/2/12. // #include<stdio.h> #include<malloc.h> #include<string.h> const char *base_num[11] = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十"}; #define NUM_LENGTH (11) typedef struct Var { char *name; int num; } Var; typedef struct Line { char *str; int pos; } Line; typedef struct VM { Var **vars; } VM; //从位置pos开始比较base是不是和str一样 int cmp(const char *base, const char *str, int pos) { for (int i = 0; i < strlen(str); ++i) { if (base[pos + i] != str[i] || (i + pos >= strlen(base))) { return 0; } } return 1; } int cn_to_num1(Line *line) { for (int i = 0; i <

Python全局变量和局部变量

╄→гoц情女王★ 提交于 2020-02-12 11:35:24
Python全局变量和局部变量: 定义在函数内的为局部变量,在外部访问局部变量会出现未定义的错误 定义在函数外的变量称为全局变量,可以在整个函数范围内访问 当函数中存在与全局变量重名的变量,以函数中的局部变量为准 定义在函数中的局部变量的作用域只在函数中 # 定义全局变量 total total = 0 def add(num1,num2): # 定义局部变量 total total = num1 + num2 # 输出局部变量 print(total) add(4,6) # 10 print(total) # 0 在函数内部,如果想要修改外部变量时,可以使用 global 或 nonlocal 关键字 global 全局变量名: 在函数中使用全局变量,可以对全局变量进行修改。 注:如果只是在函数中使用了和全局变量相同的名字,则只是局部变量 # 定义全局变量 total total = 0 def add(num1,num2): # 使用 global 关键字声明全局变量 total global total total = num1 + num2 # 输出全局变量 print(total) add(4,6) # 10 # 输出全局变量 print(total) # 10 nonlocal 嵌套作用域中的变量(嵌套函数,外层函数与内层函数之间): 修改嵌套函数之间的变量 #

sql优化

六眼飞鱼酱① 提交于 2020-02-12 11:32:53
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 4.应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num=10 or num=20 可以这样查询: select id from t where num=10 union all select id from t where num=20 5.下面的查询也将导致全表扫描: select id from t where name like '%abc%' 若要提高效率,可以考虑全文检索。 6. in 和 not in 也要慎用,否则会导致全表扫描,如: select id from t where num in(1,2,3) 对于连续的数值,能用 between

C# 多线程小试牛刀

限于喜欢 提交于 2020-02-12 10:45:07
2019年6月28日更新 采用预先生成随机数 + bitarray 来判断重复 + 数组分段插入隔离进行插入 1000w的数据的不重复随机数插入可以压缩到 3 s 内。 前言 昨天在上班时浏览博问,发现了一个问题,虽然自己在 C# 多线程上没有怎么尝试过,看了几遍 CLR 中关于 线程的概念和讲解(后面三章)。也想拿来实践实践。问题定义是这样的: 对于多线程不是很懂,面试的时候遇到一个多线程的题,不会做,分享出来,懂的大佬指点一下,谢谢 建一个winform窗体,在窗体中放上一个开始按钮,一个停止按钮,一个文本框,在窗体中声明一个List 类型的属性,点击开始按钮后开启10个线程,所有线程同时不间断的给List 集合中添加1-10000之间的随机数,要求添加List 集合中的数字不能重复,并且实时在文本框中显示集合的长度,当集合List 的长度等于1000时自动停止所有线程,如果中途点击停止按钮也停止所有线程,点击开始又继续执行。 我其实没有完全实现了这位博问中提问的同学的需求,具体问题的来源可查看该地址 问题来源 开始尝试 刚拿到这个需求的时候,映入我脑海里的是 Task, Threadpool,Concurrent,和 Lock 等概念,接下来就是组装和编码的过程了,首先理一理头绪, 生成随机数 插入到 List 中,且不能重复 开启多个线程同时插入。 首先是生成 随机数,使用

1702 按身高站队

我的梦境 提交于 2020-02-12 09:06:33
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; struct student { char name[11]; int shengao; }stu[1000000]; int cmp(student a,student b) { return a.shengao<b.shengao; } int main() {    int num;   scanf("%d",&num);   int i;   for(i=0;i<num;i++)   {     scanf("%s %d",&stu[i].name,&stu[i].shengao);   }   sort(stu,stu+num,cmp);   for(i=0;i<num;i++)     printf("%s\n",stu[i].name); } //为什么WA呢?? 啊。。。 来源: https://www.cnblogs.com/mycapple-zgs-111411/p/5016660.html

伯乐身高爬虫

那年仲夏 提交于 2020-02-12 08:59:31
最近在朋友的博客里看到了一篇文章,是讲伯乐在线这个网站上有一个面向对象栏目。什么是面向对象呢,面向对象是一个专门为IT单身男女服务的征友传播平台,由伯乐在线专门为程序员爱情创立的一个公益+免费活动。简单来说,网站的女用户在这个栏目组发帖子,包括自己的相关信息,以及理想的男友条件,男生们可以付出一定代价获得女用户保存在网站上的个人联系方式,看对眼的话,就去领证:) 然后呢,我这个朋友关注的点不太主流,他不用爬虫爬妹子照片,或者通过黑客攻击拿到妹子的联系方式,反而用python将所有发表的帖子当中对身高的要求给爬了..> 下面是我将他的代码改进: import requests import re import os import sys import time from bs4 import BeautifulSoup pageNum = 10 # 所有帖子总共10页 urlsFile = os.path.join(sys.path[0],'urls.txt') # 保存帖子url的本地路径的字符串,os.path.join()知识提供文件路径拼接功能 如果想要创建文件夹 则使用os.mkdir(path) infoNum = 0 #有效信息的总条数 num = 0 #包含敏感信息的总条数 # 获取所有帖子的url def getUrls(): if(os.path.exists

pandas向表格中循环写入数据

北城余情 提交于 2020-02-12 07:51:19
pandas向表格中循环写入多行数据 import pandas as pd def list_topic(total_num, str1): """ 生成多个主题 :param total_num: 总的主题数量 :param str1: 主题名称中的固定字母,如A1,A2,A3,A4.... :return: 返回主题列表 """ list_topic = [] num = 1 for j in range(total_num): topic_name = str1 + str(num) list_topic.append(topic_name) num += 1 return list_topic def dir_name(dir_num, str1): """ 生成多个主题 :param total_num: 总的主题数量 :param str1: 目录名称中的固定字母,如A1,A2,A3,A4.... :return: 返回目录列表 """ list_dir = [] num = 1 for j in range(dir_num): topic_name = str1 + str(num) list_dir.append(topic_name) if j != 0: # 每隔100,对目录加1,比如第1个100,目录名都为A1,第2个100,目录名都为A2 if j %