我在使用 dockerized Apache Beam 时遇到了问题。当尝试运行容器时,我只收到"No id provided."消息,仅此而已。这是代码和文件:
Dockerfile
FROM apache/beam_python3.8_sdk:latest
RUN apt update
RUN apt install -y wget curl unzip git
COPY ./ /root/data_analysis/
WORKDIR /root/data_analysis
RUN python3 -m pip install -r data_analysis/beam/requirements.txt
ENV PYTHONPATH=/root/data_analysis
ENV WORKER_ID=1
CMD python3 data_analysis/analysis.py
Run Code Online (Sandbox Code Playgroud)
代码analysis.py:
import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
def run():
options = PipelineOptions(["--runner=DirectRunner"])
with beam.Pipeline(options=options) as p:
p | beam.Create([1, 2, 3]) | beam.Map(lambda x: x-1) | beam.Map(print)
if __name__ == "__main__":
run()
Run Code Online (Sandbox Code Playgroud)
命令:
% …Run Code Online (Sandbox Code Playgroud) 我正在使用棉花糖和mongoengine在Flask上构建和API.当我打电话并且ID应该被序列化时,我收到以下错误:
TypeError: ObjectId('54c117322053049ba3ef31f3') is not JSON serializable
Run Code Online (Sandbox Code Playgroud)
我看到了其他库的一些方法来覆盖ObjectId的处理方式.我还没有想到Marshmallow,有谁知道怎么做?
我的模型是:
class Process(db.Document):
name = db.StringField(max_length=255, required=True, unique=True)
created_at = db.DateTimeField(default=datetime.datetime.now, required=True)
Run Code Online (Sandbox Code Playgroud)
我的序列化器:
class ProcessSerializer(Serializer):
class Meta:
fields = ("id", "created_at", "name")
Run Code Online (Sandbox Code Playgroud)
并且观点:
class ProcessView(Resource):
def get(self, id):
process = Process.objects.get_or_404(id)
return ProcessSerializer(process).data
Run Code Online (Sandbox Code Playgroud) 如何在具有这种数据结构的Gnuplot中绘制(3D绘图)矩阵.我找不到使用第一行和第一行作为ax和y ticks(或忽略它们)的方法
,5,6,7,8
1,-6.20,-6.35,-6.59,-6.02
2,-6.39,-6.52,-6.31,-6.00
3,-6.36,-6.48,-6.15,-5.90
4,-5.79,-5.91,-5.87,-5.46
Run Code Online (Sandbox Code Playgroud)
是否splot 'data.csv' matrix使用正确的参数?
让我们使用以下代码(conftest.py):
import random
def test_val():
value = random.random()
assert value < 0.5
Run Code Online (Sandbox Code Playgroud)
运行py.test --junitxml=result.xml conftest.py生成result.xml(通过测试时):
<?xml version="1.0" encoding="utf-8"?>
<testsuite errors="0" failures="0" name="" skips="0" tests="1" time="0.047">
<testcase classname="conftest" name="test_val" time="0.0"/>
</testsuite>
Run Code Online (Sandbox Code Playgroud)
现在。我想做的就是存储test_val()in 生成的值results.xml。有办法吗?我似乎在pytest doc中找不到任何相关内容。
我有一个Jenkins CI,配置如下:
我很肯定我的代理配置正确.但是当我尝试下载插件或更新Jenkins上的插件时.我收到这个错误
Git Client Plugin
Failure -
hudson.util.IOException2: Failed to download from http://updates.jenkins-ci.org/download/plugins/git-client/1.8.1/git-client.hpi
at hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:794)
.
.
Caused by: java.net.ProtocolException: Server redirected too many times (20)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
.
.
.
at hudson.model.UpdateCenter$UpdateCenterConfiguration.download(UpdateCenter.java:764)
... 7 more
Caused by: java.net.ProtocolException: Server redirected too many times (20)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1636)
Run Code Online (Sandbox Code Playgroud)
但是我可以对实际的URL/URI进行Curl或wget来下载插件
感谢您的帮助和反馈
我正在使用Celery 3.1.23版,将动态计划的任务动态添加到芹菜节拍中。我有一名芹菜工作者和一名芹菜节拍实例正在运行。
运行task.delay()可以触发标准的芹菜任务。当我将计划的定期任务定义为配置中的设置时,芹菜节拍将其运行。
但是,我需要的是能够添加在运行时在指定的crontab上运行的任务。将任务添加到持久性调度程序后,芹菜节拍似乎无法检测到新添加的新任务。我可以看到celery-schedule文件确实有一个包含新任务的条目。
码:
scheduler = PersistentScheduler(app=current_app, schedule_filename='celerybeat-schedule')
scheduler.add(name="adder",
task="app.tasks.add",
schedule=crontab(minute='*/1'),
args=(1,2))
scheduler.close()
Run Code Online (Sandbox Code Playgroud)
当我跑步时:
print(scheduler.schedule)
Run Code Online (Sandbox Code Playgroud)
我得到:
{'celery.backend_cleanup': <Entry: celery.backend_cleanup celery.backend_cleanup() <crontab: 0 4 * * * (m/h/d/dM/MY)>,
'adder': <Entry: adder app.tasks.add(1, 2) <crontab: */1 * * * * (m/h/d/dM/MY)>}
Run Code Online (Sandbox Code Playgroud)
?
请注意,app.tasks.add具有@celery.task装饰器。
我知道这个问题太抽象了.但.我需要多长时间学习LabVIEW才能成为普通的LabVIEW开发人员?例如,如果我购买关于LabVIEW的好书并且每天有8小时(在我的工作中)专门用于LabVIEW学习我将花费多少天学习LabVIEW?能否请您根据自己的经验提供示例.关于我的更多信息可能会有所帮助:我是一名开发人员并且知道c\c ++\python和一些java语言.
我是数据库和SQL Server的新手.
因此,当我在互联网上搜索关于数据库的事情时,我发现如果数据库服从或遵循ACID(原子性,一致性,隔离性,耐久性)属性,那么数据库就说是好的.
我想知道Microsoft SQL Server(任何版本当前或以前的版本)在内部遵循ACID属性,或者如果我们在我们的应用程序中使用MS SQL Server,那么我们必须编写编码,使得我们的应用程序遵循ACID属性.
简而言之:维护ACID属性是数据库的任务(或责任) 或其应用程序编程的任务.
谢谢..
我写了一个类,允许我将天数(整数)添加到日期(字符串 %Y-%m-%d)。这个类的对象需要是 JSON 可序列化的。
以整数形式向我的对象添加天数按预期工作。但是 json.dumps(obj) 为我的原始对象返回了太多信息(“2016-03-23 15:57:47.926362”)。为什么 ?我需要如何修改类以获取“2016-03-23”?请参见下面的示例。
代码:
from datetime import datetime, timedelta
import json
class Day(str):
def __init__(self, _datetime):
self.day = _datetime
def __str__(self):
return self.day.date().isoformat()
def __repr__(self):
return "%s" % self.day.date().isoformat()
def __add__(self, day):
new_day = self.day + timedelta(days=day)
return Day(new_day).__str__()
def __sub__(self, day):
new_day = self.day - timedelta(days=day)
return Day(new_day).__str__()
if __name__ == "__main__":
today = Day(datetime.today())
print(today) # 2016-03-23
print(json.dumps(today)) # "2016-03-23 15:57:47.926362"
print(today+1) # 2016-03-24
print(json.dumps(today+1)) # "2016-03-24"
print(today-1) # 2016-03-22 …Run Code Online (Sandbox Code Playgroud) 在Python REPL中
dir(str)
Run Code Online (Sandbox Code Playgroud)
版画
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
Run Code Online (Sandbox Code Playgroud)
即.所有可用的字符串方法.
如何查看所有可用的全局方法,如"print","list","len"等?
python ×5
acid ×1
apache ×1
apache-beam ×1
celery ×1
celerybeat ×1
class ×1
csv ×1
database ×1
datetime ×1
docker ×1
flask ×1
gnuplot ×1
json ×1
labview ×1
marshmallow ×1
mongoengine ×1
proxy ×1
pytest ×1
python-3.5 ×1
python-3.8 ×1
python-3.x ×1
sql-server ×1
xml ×1