我想生成具有可变数量多边形的geoJSON.2个多边形的示例:
{
"type": "FeatureCollection",
"features": [
{"geometry": {
"type": "GeometryCollection",
"geometries": [
{
"type": "Polygon",
"coordinates":
[[11.0878902207, 45.1602390564],
[0.8251953125, 41.0986328125],
[7.63671875, 48.96484375],
[15.01953125, 48.1298828125]]
},
{
"type": "Polygon",
"coordinates":
[[11.0878902207, 45.1602390564],
[14.931640625, 40.9228515625],
[11.0878902207, 45.1602390564]]
}
]
},
"type": "Feature",
"properties": {}}
]
}
Run Code Online (Sandbox Code Playgroud)
我有一个函数,它给我每个多边形的坐标列表,所以我可以创建一个多边形列表,所以我能够构建geoJSON用for循环迭代它.
问题是我没有看到如何轻松地做到这一点(我想例如将列表作为字符串返回,但将geoJSON构建为字符串看起来是个坏主意).
我被建议这个非常pythonic的想法:
geo_json = [ {"type": "Feature",,
"geometry": {
"type": "Point",
"coordinates": [lon, lat] }}
for lon, lat in zip(ListOfLong,ListOfLat) ]
Run Code Online (Sandbox Code Playgroud)
但由于我添加了可变数量的多边形而不是点列表,因此这种解决方案似乎不合适.或者至少我不知道如何适应它.
我可以把它建成一个字符串,但我想以更聪明的方式做到这一点.任何的想法?
我有一个文本文件,其内容如下:
******** ENTRY 01 ********
ID: 01
Data1: 0.1834869385E-002
Data2: 10.9598489301
Data3: -0.1091356549E+001
Data4: 715
Run Code Online (Sandbox Code Playgroud)
然后是一个空行,并重复更多类似的块,所有这些块都具有相同的数据字段.
我正在向Python移植一个C++代码,某个部分逐行获取文件,检测文本标题,然后检测每个字段文本以提取数据.这根本不像一个智能代码,我认为Python必须有一些库来轻松地解析这样的数据.毕竟,它几乎看起来像一个CSV!
对此有何看法?
我有一个double [] []数组,我希望将一行放入float []数组中.铸造最初没有起作用,所以我寻找不同的东西.
我在stackoverflow中找到了一个优雅的解决方案,将Object []转换为String [],如果我将Object []转换为float [],它也可以工作.
所以:有没有优雅的方法将double []转换为float [],或者将double []转换为Object [],以便我可以在其他帖子中使用代码?
我将提供一个我正在做的示例代码,即使我认为它不是必要的:
double[][] datos = serie.toArray();
double[][] testArray = {{1.0, 2.0, 3.0}, {4.0, 5.0, 6.0}, {7.0, 8.0, 9.0}};
double[] doubleArray = Arrays.copyOf(testArray[1], testArray[1].length);
// This would be great but doesn't exist:
//float[] floatArray = Arrays.copyOf(doubleArray, doubleArray.length, float[].class);
Run Code Online (Sandbox Code Playgroud) 我正在用这段代码测试c ++ 11线程,但是在创建线程时,我遇到错误没有匹配函数来调用'std :: thread :: thread()'.
这就像我给std :: thread ctr的函数有问题,但我不知道它是怎么回事.它没有完成,但看起来对我来说:
标题:
#ifndef CONNECTION_H
#define CONNECTION_H
#include <thread>
#include <mysql++.h>
class Connection
{
public:
Connection(std::string mysqlUser, std::string mysqlPassword);
~Connection();
private:
std::string mysqlUser;
std::string mysqlPassword;
std::string mysqlIP;
int mysqlPort;
mysqlpp::Connection mysqlConnection;
std::thread connectionThread;
void threadLoop();
};
#endif // CONNECTION_H
Run Code Online (Sandbox Code Playgroud)
资源:
#include "connection.h"
Connection::Connection(std::string mysqlUser, std::string mysqlPassword)
{
this->mysqlUser = mysqlUser;
this->mysqlPassword = mysqlPassword;
this->mysqlIP = "localhost"; //default
this->mysqlPort = 3306; //default
//Launch thread
std::thread connectionThread(threadLoop);
}
Connection::~Connection(){
mysqlConnection.disconnect();
} …Run Code Online (Sandbox Code Playgroud) 我已经有一个名为"mydb"的数据库,我有一个名为"AERODROME"的表.
我的models.py看起来像这样:
from django.db import models
class Aerodrome(models.Model):
Name = models.CharField(max_length=48)
Latitude = models.DecimalField(decimal_places=4, max_digits=7)
Longitude = models.DecimalField(decimal_places=4, max_digits=7)
Run Code Online (Sandbox Code Playgroud)
我在views.py上有这个方法:
from django.shortcuts import render
from helloworld.models import Aerodrome
def aerodromes(request):
return render(request, 'aerodromes.html', {'aerodromes': Aerodrome.objects.all()})
Run Code Online (Sandbox Code Playgroud)
在我的模板文件夹中,我有aerodromes.html,这也很简单:
<!doctype html>
<html>
<head>
</head>
<body>
<table>
{% for aerodrome in aerodromes %}
<tr>
<td>{{ aerodrome.Name }}</td>
<td>{{ aerodrome.Longitude }}</td>
<td>{{ aerodrome.Latitude }}</td>
</tr>
{% endfor %}
</table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
当我通过我的浏览器测试时,我收到一个错误,因为它看起来像是用错误的名称访问该表.我的应用程序被称为"helloworld",因为它是一个测试,而不是访问mydb.AERODROMES,它访问mydb.helloworld_aerodrome(还要注意区分大小写的问题).
由于我已经填充了数据库,我没有运行syncdb(我知道这不是必要的,但也许这就是问题).
所以,问题是我不知道为什么它会在表名中添加"helloworld_",而且我仍然不确定我在哪里修正表名(并且从那里开始出现区分大小写)有"机场"而不是"AERODROMES"的问题.
这里有什么帮助?
我正在尝试Pypy编译器,看看我是否可以加速我的代码.然而,我遇到麻烦的MySQLdb模块,Pypy无法找到.
我已经读过MySQLdb 1.2.4应该可以正常使用Pypy,所以我升级了模块,我测试它是CPython编译器的正确版本:
import MySQLdb
MySQLdb.__version__
>> '1.2.4'
Run Code Online (Sandbox Code Playgroud)
但是当使用Pypy时,我得到:
Python 2.7.2 (1.9+dfsg-1, Jun 19 2012, 23:23:45)
[PyPy 1.9.0 with GCC 4.7.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
And now for something completely different: ``-FIRST they ignore you, then they
laugh at you, then they fight you, then you win.-''
>>>> import MySQLdb
Traceback (most recent call last):
File "<console>", line 1, in <module>
ImportError: No module named MySQLdb
Run Code Online (Sandbox Code Playgroud)
有帮助吗?我正在使用Ubuntu 13.04并使用进入Canonical存储库的Pypy.
我目前正在评估HTML到PDF导出的不同库.其中一些确实实现了HTML到PDF转换,但它被标记为实验性的.
PhantomJS听起来像是一个可靠的选项,但我不确定是否可以在客户端生成PDF,所以......有可能吗?怎么样?
这是一个功课问题:
我有RDD一个集合os元组.我还有从每个输入元组返回字典的函数.不知何故,与减少功能相反.
通过地图,我可以很容易地从一个RDD元组到一个RDD字典.但是,由于字典是(键,值)对的集合,我想将RDD字典转换为RDD每个字典内容的(键,值)元组.
这样,如果我RDD包含10个元组,那么我得到一个RDD包含5个元素的10个字典(例如),最后我得到RDD50个元组.
我认为这必须是可能的但是,怎么样?(也许问题是我不知道这个操作是如何用英语调用的)
我正在使用Windows 7.
我已经尝试了几次debug.keystore,使用以下命令出现在c:\ users\YOURUSER.android \中:
keytool -list -alias androiddebugkey -keystore c:\Users\YOURUSER\.android\debug.keystore -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)
它给了我一个MD5,但后来我去了谷歌MD5注册页面,它说它不是一个有效的指纹.
我搜索了更多信息,最后我在c:\ users\YOURUSER \中创建了一个新的debug.keystore,以避免重写原始的.我使用了这个命令:
keytool -genkey -keypass android -keystore c:\users\YOURUSER\debug.keystore -alias androiddebugkey -storepass android -validity 10000 -dname "CN=Android Debug,O=Android,C=US"
Run Code Online (Sandbox Code Playgroud)
它有效,所以我使用上一个命令来获取MD5,它给了我一个新的MD5.然后我再次去谷歌和同样的问题:"不是一个有效的指纹".
我做了第二次尝试.这就是我所做的:1)打开一个Windows7终端,转到c:\ program files\java\jdk1.7.0\bin\2)写了命令:
keytool -genkey -v -keystore c:\eclipse\my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
Run Code Online (Sandbox Code Playgroud)
3)然后我尝试使用comand从我的密钥库中获取MD5代码:
keytool -list -alias alias_name -keystore c:\eclipse\my-release-key.keystore
Run Code Online (Sandbox Code Playgroud)
并写了我被问到的密码.它给了我一个MD5.
4)我去映射api密钥注册并写入MD5."FINGERPRINT无效"
我不知道问题是什么.我应该为我编程的每个应用程序执行此操作?太头疼了!
有人能帮帮我吗?
我有一个TextView用作蓝牙连接控制台.当我发送命令时,我希望它以彩色(例如青色)书写,并且答案以不同的颜色(例如红色)收到.
有可能这样做,如果是这样,怎么样?
我读过可能会使用HTML,但我不确定这是最好的方法,甚至不知道怎么做.