小编Ark*_*ady的帖子

如何拆分文件并保留每个部分的第一行?

给定:一个具有"特殊"第一行的大文本数据文件(例如CSV格式)(例如,字段名称).

通缉:相当于coreutils split -l命令,但附加要求原始文件中的标题行出现在每个结果片段的开头.

我猜一些混合物split并且head会做的伎俩?

linux bash shell text file

58
推荐指数
5
解决办法
3万
查看次数

编写if语句的更短,更pythonic的方式

我有这个

bc = 'off'

if c.page == 'blog':
    bc = 'on'

print bc
Run Code Online (Sandbox Code Playgroud)

在python中有更多的pythonic(和/或更短)的写法吗?

python if-statement

44
推荐指数
5
解决办法
5万
查看次数

结果的顺序是否来自列表理解?

使用列表推导时,新列表的顺序是否以任何方式得到保证?作为一个人为的例子,列表理解的定义保证了以下行为:

>> a = [x for x in [1,2,3]]
>> a
[1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

同样,保证以下平等:

>> lroot = [1, 2, 3]
>> la = [x for x in lroot]
>> lb = []
>> for x in lroot:
     lb.append(x)
>> lb == la
True
Run Code Online (Sandbox Code Playgroud)

具体来说,这是我对此感兴趣的订单.

python list-comprehension

28
推荐指数
1
解决办法
7703
查看次数

为什么我不能将datetime.date子类化?

以下为什么不工作(Python 2.5.2)?

>>> import datetime
>>> class D(datetime.date):
        def __init__(self, year):
            datetime.date.__init__(self, year, 1, 1)
>>> D(2008)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: function takes exactly 3 arguments (1 given)
Run Code Online (Sandbox Code Playgroud)

我想创建一个类似datetime.date但具有不同__init__功能的类.显然我的功能永远不会被调用.相反,原来datetime.date.__init__被调用并失败,因为这需要3个参数,而我正在传递一个.

这里发生了什么?这是一个线索吗?

>>> datetime.date.__init__
<slot wrapper '__init__' of 'object' objects>
Run Code Online (Sandbox Code Playgroud)

谢谢!

python oop datetime subclass

19
推荐指数
2
解决办法
5888
查看次数

如何在Airflow中运行bash脚本文件

我有一个bash脚本,它创建一个我想在Airflow中运行的文件(如果它不存在),但是当我尝试它失败时.我该怎么做呢?

#!/bin/bash
#create_file.sh

file=filename.txt

if [ ! -e "$file" ] ; then
    touch "$file"
fi

if [ ! -w "$file" ] ; then
    echo cannot write to $file
    exit 1
fi
Run Code Online (Sandbox Code Playgroud)

这就是我在Airflow中调用它的方式:

create_command = """
 ./scripts/create_file.sh
"""
t1 = BashOperator(
        task_id= 'create_file',
        bash_command=create_command,
        dag=dag
)

lib/python2.7/site-packages/airflow/operators/bash_operator.py", line 83, in execute
    raise AirflowException("Bash command failed")
airflow.exceptions.AirflowException: Bash command failed
Run Code Online (Sandbox Code Playgroud)

python airflow

15
推荐指数
1
解决办法
2万
查看次数

如何让Scrapy在日志中显示每个下载请求的用户代理?

我正在学习Scrapy,一个网络爬行框架.

我知道我可以设置USER_AGENTsettings.py该Scrapy项目的文件.当我运行Scrapy时,我可以看到日志中USER_AGENT的值INFO.
USER_AGENT是在我想要抓取的服务器的每个下载请求中设置的.

但是我在这个解决方案的帮助下USER_AGENT 随机使用了多个.我猜这随机选择会起作用.我想确认一下.那么,我如何使Scrapy 显示每个下载请求,以便我可以看到日志中的值?USER_AGENT USER_AGENTUSER_AGENT

python user-agent web-crawler scrapy web-scraping

14
推荐指数
3
解决办法
1万
查看次数

如何从PIL图像创建OpenCV图像?

我想用OpenCV(在Python中)进行一些图像处理,但我必须从一个PIL Image对象开始,所以我不能使用该cvLoadImage()调用,因为它需要一个文件名.

这个食谱(改编自http://opencv.willowgarage.com/wiki/PythonInterface)不起作用,因为cvSetData抱怨argument 2 of type 'void *'.有任何想法吗?

from opencv.cv import *
from PIL import Image

pi = Image.open('foo.png')                       # PIL image
ci = cvCreateImage(pi.size, IPL_DEPTH_8U, 1)     # OpenCV image
data = pi.tostring()
cvSetData(ci, data, len(data)) 
Run Code Online (Sandbox Code Playgroud)

我认为最后一个论点cvSetData也是错误的,但我不确定它应该是什么.

python opencv image-processing python-imaging-library

12
推荐指数
1
解决办法
2万
查看次数

Oracle 11g第1版与第2版 - LEFT OUTER JOIN的不同行为

从Oracle 11g第1版升级到第2版后,我发现了这一点.

我现在可以总结的最好的是,LEFT OUTER JOIN针对具有常量"假"列和WHERE子句的查询在两个Oracle RELEASES中生成不同的结果.在版本2中,"假"列显示在不匹配的行中:

TEST1      TEST2
=====      =====
A B        A B 
- ---      - ---
1 bar      1 hello
2 baz

> SELECT * FROM test1 LEFT OUTER JOIN test2 ON test1.a = test2.a;
  A B   A_1 B_1
  - --- --- -----
  1 bar   1 hello
  2 baz   
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.所有上述工作在Rel上都是一样的.现在,添加一个'假'常量列X,事情按预期工作:

> SELECT * 
    FROM test1 
    LEFT OUTER JOIN (SELECT test2.*, 'X' AS X 
                       FROM test2) test3 
      ON test1.a = test3.a;

  A B   A_1 B_1 …
Run Code Online (Sandbox Code Playgroud)

oracle left-join oracle11g

7
推荐指数
1
解决办法
5385
查看次数

如何在运行时编译/评估Scala表达式?

Scala的新手,并寻找指向惯用解决方案的指针,如果有的话.

我想要将一些用户提供的任意Scala函数(允许引用我在代码中定义的函数/类)应用于某些数据.

例如:我有我的功能foo(s: String): Stringbar(s: String): String功能myprog.scala.用户像这样运行我的程序:

$ scala myprog data.txt --func='(s: Str) => foo(bar(s)).reverse'
Run Code Online (Sandbox Code Playgroud)

这将逐行遍历数据文件,并发出将用户指定的函数应用于该行的结果.

对于额外的积分,我可以确保用户定义的功能没有副作用吗?如果没有,我可以将功能限制为使用有限的功能子集(我可以保证安全)吗?

scala

7
推荐指数
1
解决办法
3233
查看次数

Excel 数据透视表 - 计算字段如何返回空白单元格

我正在使用 Excel 中的数据透视表和不同共同基金的历史月度回报。我正在尝试计算每只基金扣除所有管理费后的历史月回报率。因此,我有一个名为“MonthlyReturn”的系列,还有一个包含每只基金的年度成本的系列,名为“MER”。基本上,我很难做的是在没有数据的情况下返回数据透视表中的空单元格,而不是仅仅显示(0-'MER'/12)哪些不能代表真实的回报。该基金不是负的'MER'/12,只是当时不存在。

我在数据透视表的计算字段中使用的公式如下:=IF(MonthlyReturn="","",(MonthlyReturn-(MER/100/12)))。问题是,这会返回 0,而不是显示没有月度回报数据的月份的空白单元格。

我将如何确保如果给定月份内给定基金的 MonthlyReturn 没有附加数据,它将返回一个空单元格,而不是尝试计算 MonthlyReturn - Cost/12?

谢谢。

任何帮助将不胜感激。

加布里埃尔

excel pivot pivot-table excel-formula calculated-field

6
推荐指数
1
解决办法
1万
查看次数

Oracle - 将数据导入到具有不同名称的表中?

我有一个从Oracle表导出的大型(多GB)数据文件.我想将此数据导入另一个Oracle实例,但我希望表名与原始表不同.这可能吗?怎么样?

导入和导出系统都是Oracle 11g.该表包含BLOB列,如果这有任何区别.

谢谢!

更新:

这里的想法是更新表,同时将系统的停机时间保持在最低限度.解决方案(根据Vincent Malgrat的回答和APC的更新)是:

  1. 假设我们的表名是 A
  2. 制作临时架构 TEMP_SCHEMA
  3. 将我们的数据导入 TEMP_SCHEMA.A
  4. CREATE REAL_SCHEMA.B AS SELECT * FROM TEMP_SCHEMA.A
  5. DROP TABLE REAL_SCHEMA.A重命名REAL_SCHEMA.AREAL_SCHEMA.A_OLD
  6. 重命名REAL_SCHEMA.BREAL_SCHEMA.A
  7. DROP REAL_SCHEMA.A_OLD

这样,停机时间仅在步骤4和5期间,两者都应与数据大小无关.如果这不起作用,我会在这里发布更新:-)

database oracle import oracle11g

4
推荐指数
1
解决办法
4万
查看次数

如何在 Flask-RESTful 中添加自定义 HTTP 响应头?

我正在使用 Flask-RESTful 并希望通过向我的响应添加自定义 HTTP 标头来处理某些错误。是否有标准的 Flask 或 Flask-RESTful 方式来做到这一点?

python flask flask-restful

1
推荐指数
1
解决办法
3792
查看次数

需要支持HTTPS的Python XML-RPC服务器

我已经在Python中有一个非常简单的线程XML-RPC服务器:

from SocketServer import ThreadingMixIn
class AsyncXMLRPCServer(ThreadingMixIn, SimpleXMLRPCServer):
    pass

server = AsyncXMLRPCServer(('localhost', 9999))
server.register_instance(some_object())
server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

现在我想通过https专门访问它.我该怎么办?

python ssl https xml-rpc

0
推荐指数
1
解决办法
1784
查看次数