我正在尝试解析csv文件并仅从特定列中提取数据.
示例csv:
ID | Name | Address | City | State | Zip | Phone | OPEID | IPEDS |
10 | C... | 130 W.. | Mo.. | AL... | 3.. | 334.. | 01023 | 10063 |
Run Code Online (Sandbox Code Playgroud)
我想只捕获特定的列,也就是说ID,Name,Zip和Phone.
我看过的代码让我相信我可以通过相应的数字调用特定的列,因此即:Name将对应2并使用迭代遍历每一行将row[2]生成第2列中的所有项目.只有它不会.
这是我到目前为止所做的:
import sys, argparse, csv
from settings import *
# command arguments
parser = argparse.ArgumentParser(description='csv to postgres',\
fromfile_prefix_chars="@" )
parser.add_argument('file', help='csv file to import', action='store') …Run Code Online (Sandbox Code Playgroud) 示例列表: mylist = ['abc123', 'def456', 'ghi789']
如果匹配子字符串,我想检索一个元素,比如 abc
sub = 'abc'
print any(sub in mystring for mystring in mylist)
Run Code Online (Sandbox Code Playgroud)
True如果列表中的任何元素包含模式,则上面打印.
我想打印匹配子字符串的元素.所以,如果我正在检查'abc'我只想'abc123'从列表中打印.
我只是想让一个简单的near查询工作.这是我的文档样本.
{"point":
{"type": "Point",
"coordinates": [30.443902444762696, -84.27326978424058]},
"created_on": {"$date": 1398016710168},
"radius": 180,
"user": {"$oid": "53543188eebc5c0cc416b77c"},
"_id": {"$oid": "53544306eebc5c0ecac6cfba"},
"expires_on": {"$date": 1399831110168}
}
Run Code Online (Sandbox Code Playgroud)
和mongod我尝试了命令:
db.bar.find({point: {$near: [-84.26060492426588, 30.45023887165371]}});
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
错误:{"$ err":"无法执行查询:错误处理查询:ns = foo.bar skip = 0 \nTree:GEONEAR field = point maxdist = 1.79769e + 308 isNearSphere = 0 || First:notFirst:full path :point \nSort:{} \nProj:{} \n planner返回错误:无法找到$ geoNear查询的索引","代码":17007}
也许我的谷歌今天不是那么尖锐,但我找不到任何东西.另外,我运行了ensure index命令.我的意图是这些是地图位置.
db.bar.ensureIndex({a:1});
db.bar.ensureIndex({geo:"2d"});
Run Code Online (Sandbox Code Playgroud) 我有这些for循环.
// output all possible combinations
for ( int i1 = 0; i1 <= 2; i1++ )
{
for ( int i2 = 0; i2 <= 2; i2++ )
{
for ( int i3 = 0; i3 <= 2; i3++ )
{
for ( int i4 = 0; i4 <= 2; i4++ )
{
for ( int i5 = 0; i5 <= 2; i5++ )
{
for ( int i6 = 0; i6 <= 2; i6++ )
{
for ( …Run Code Online (Sandbox Code Playgroud) 我有一个解析对象的YAML文件,例如:
{'name': [{'proj_directory': '/directory/'},
{'categories': [{'quick': [{'directory': 'quick'},
{'description': None},
{'table_name': 'quick'}]},
{'intermediate': [{'directory': 'intermediate'},
{'description': None},
{'table_name': 'intermediate'}]},
{'research': [{'directory': 'research'},
{'description': None},
{'table_name': 'research'}]}]},
{'nomenclature': [{'extension': 'nc'}
{'handler': 'script'},
{'filename': [{'id': [{'type': 'VARCHAR'}]},
{'date': [{'type': 'DATE'}]},
{'v': [{'type': 'INT'}]}]},
{'data': [{'time': [{'variable_name': 'time'},
{'units': 'minutes since 1-1-1980 00:00 UTC'},
{'latitude': [{'variable_n...
Run Code Online (Sandbox Code Playgroud)
我在访问python中的数据时遇到问题并经常看到错误 TypeError: list indices must be integers, not str
我希望能够访问所有对应的元素'name'来检索每个数据字段,我想它看起来像是这样的:
import yaml
settings_stream = open('file.yaml', 'r')
settingsMap = yaml.safe_load(settings_stream)
yaml_stream = True
print 'loaded settings …Run Code Online (Sandbox Code Playgroud) 我按照这个问题的建议,但我仍然收到这个错误:
sqlalchemy.exc.NoForeignKeysError: Can't find any foreign key relationships between 'investment' and 'real_estate'.
楷模
class Investment(db.Model):
__tablename__ = 'investment'
__mapper_args__ = {'polymorphic_identity': 'investment'}
id = Column(db.Integer, primary_key=True)
item_name = Column(db.String(64))
investment_type = Column(db.String(32), nullable=False)
__mapper_args__ = {'polymorphic_on': investment_type}
class RealEstate(Investment):
__tablename__ = 'real_estate'
__mapper_args__ = {'polymorphic_identity': 'real_estate'}
id = Column(db.Integer, primary_key=True)
current_balance = Column(db.Float)
Run Code Online (Sandbox Code Playgroud)
我还更新了该答案中的示例,以反映SQLAlchemy文档中的更改,但仍然是错误.
这里的目标是我不希望RealEstate继承的属性在Investment表中.我想使用RealEstate表继承并保留所有这些属性.
谁能看到我错过的东西?
我是SQLAlchemy的新手,我喜欢它.现在我手动做了很多事情,我想做更多"热情"和动态的事情.
举个例子,我有这个简短的脚本,手动创建/定义一个表,然后是一个将数据插入该表的函数.
数据库连接
import os
from sqlalchemy import *
from sqlalchemy import schema, types
from sqlalchemy.ext.declarative import declarative_base
db_url = os.environ.get('DATABASE_URL')
engine = create_engine(db_url)
Base = declarative_base(engine)
meta = Base.metadata
Run Code Online (Sandbox Code Playgroud)
表定义
file_paths = Table('file_paths', meta,
Column('table_id', Integer, primary_key = True),
Column('fullpath', String(255)),
Column('filename', String(255)),
Column('extension', String(255)),
Column('created', String(255)),
Column('modified', String(255)),
Column('size', Integer),
Column('owner', String(255)),
Column('permissions', Integer),
mysql_engine='InnoDB',
)
file_paths.drop(engine, checkfirst = False)
file_paths.create(engine, checkfirst = True)
Run Code Online (Sandbox Code Playgroud)
insert函数将字符串和列表作为参数
def push_to_db(fullpath, fileInfo):
i = file_paths.insert()
i.execute( fullpath = str(fullpath),
filename = …Run Code Online (Sandbox Code Playgroud) 在成功发布到表单端点后,我使用一些URL客户端代码可以与之交互的URL参数重定向回相同的端点.
@bp.route('/submit', methods=['GET', 'POST'])
def submit():
form = SubmissionForm()
labels = current_app.config['TRELLO_LABELS']
if form.validate_on_submit():
submission = Submission().create(
title=form.data['title'], email=form.data['email'], card_id=card.id, card_url=card.url)
# reset form by redirecting back and setting the URL params
return redirect(url_for('bp.submit', success=1, id=card.id))
return render_template('submit.html', form=form)
Run Code Online (Sandbox Code Playgroud)
但是我试图为这段代码编写测试时遇到了一些问题,因为我无法弄清楚如何测试那些URL参数是否在我的重定向URL上.我不完整的测试代码是:
import pytest
@pytest.mark.usefixtures('session')
class TestRoutes:
def test_submit_post(self, app, mocker):
with app.test_request_context('/submit',
method='post',
query_string=dict(
email='email@example.com',
title='foo',
pitch='foo',
format='IN-DEPTH',
audience='INTERMEDIATE',
description='foo',
notes='foo')):
assert resp.status_code == 200
Run Code Online (Sandbox Code Playgroud)
我尝试了几种不同的方法来测试它.使用和不使用上下文管理器,我已经深深的挖成的烧瓶中,并WERKZEUG源test_client和test_request_context.
我只是想在有效POST后测试URL params for success和id重定向.
我想用数组中的文本替换'div span'中的文本.我想要这个简单的动画来做两件事......
我有一个小提琴设置,我一直在尝试不同的东西; http://jsfiddle.net/fmdfrank/W47QV/
任何人?
可能重复:C中的
"static const"vs"#define"
我的第一个想法是,这是隐含的,但是有没有理由为什么要使用const而不是#define?
如果你设置了一个全局变量,为什么你想要改变它,你也不想全局保护它?