我想通过变量名称对环境进行子集化.
e <- new.env(parent=emptyenv())
e$a <- 1
e$b <- 2
e$d <- 3
e[ls(e) %in% c("a","b", "c")]
### if e was a list, this would return the subset list(a=1, b=2)
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何按名称对环境元素进行子集化.使用lapply或eapply也不起作用.通过变量名称对环境进行子集的正确或简单方法是什么?谢谢.
随着我读得越多,我觉得 python 中的 aysnc 更加愚蠢。所以我决定直接询问答案。如何更改以下代码(使用异步或类似方法)以获得所需的结果?另外,我怎样才能在烧瓶或sanic中做到这一点?
import time
def long_job():
print('long job started')
time.sleep(5)
print('long job ended')
def main_job():
long_job()
time.sleep(1)
print('main job returned')
main_job()
# expected result:
# 'long job started'
# 'main job returned'
# 'long job ended'
Run Code Online (Sandbox Code Playgroud)
基本上,我不想在返回 main_job 之前等待 long_job 结束。先感谢您。:)
nested = {'a':{'aa':1, 'bb':2}, 'b':{'aa':3, 'bb':4}}
Run Code Online (Sandbox Code Playgroud)
如何获取第二个键为“aa”result的子集:nested
result = {'a':{'aa':1}, 'b':{'aa':3}}
Run Code Online (Sandbox Code Playgroud)
我尝试了这个但没有成功:
result = {k1:{k2:nested[k1][k2]} for k1 in nested.keys() & k2 in ['aa']}
Run Code Online (Sandbox Code Playgroud)
先感谢您。
如何为类型定义别名以使用类型提示:
import typing
type Ticker str # How to do this? I used golang notation. How do you do it in python?
Report = typing.Dict[Ticker, typing.List]
Run Code Online (Sandbox Code Playgroud)
这意味着 Ticker 是一种字符串,Report 是从 Ticker 到列表的字典。谢谢你。这种别名的好处是任何人都知道它是一个自动收报机。比编写 Report = typing.Dict[str, typing.List] 更清晰、更易读
python ×3
asynchronous ×1
dictionary ×1
environment ×1
nested ×1
r ×1
sanic ×1
subset ×1
type-hinting ×1
typing ×1