我想知道是否有办法重新启动ipython内核而不关闭它,就像笔记本中存在的内核重启功能一样.我试过,%reset但似乎没有清除进口.
之间有什么区别return和 pure距离Control.Applicative?似乎我pure甚至可以在一个do块结束时使用它?
那么在任何情况下,一个人应该优先于另一个(除了每个人都希望return在一个do区块的末尾)?
是否有一种简单/干净的方法来迭代由子图返回的轴数组
nrow = ncol = 2
a = []
fig, axs = plt.subplots(nrows=nrow, ncols=ncol)
for i, row in enumerate(axs):
for j, ax in enumerate(row):
a.append(ax)
for i, ax in enumerate(a):
ax.set_ylabel(str(i))
Run Code Online (Sandbox Code Playgroud)
甚至适用于nrow或ncol == 1.
我尝试了列表理解,如:
[element for tupl in tupleOfTuples for element in tupl]
Run Code Online (Sandbox Code Playgroud)
但是如果nrows或者那就失败了ncols == 1
是否有任何(现有的)方法在ipython笔记本中将python字典显示为html表.说我有一本字典
d = {'a': 2, 'b': 3}
Run Code Online (Sandbox Code Playgroud)
然后我跑了
magic_ipython_function(d)
Run Code Online (Sandbox Code Playgroud)
给我一些类似的东西

什么是pythonic方法搜索给定列表['a', 'b', 'c']中的元素b替换它并插入多个项目,b1, b2, b3以便列表最终读取为['a', 'b1', 'b2', 'b3', 'c']
如果我修复了分支中的文件中的错误,该错误branch_a应该应用于所有分支.有没有办法将更改应用于所有分支,而无需单独检出分支.
git commit -m 'commit msg' # on branch a
git checkout branch_b
git cherry-pick branch_a
git checkout branch_c
git cherry-pick branch_a
Run Code Online (Sandbox Code Playgroud)
我希望有一个 git commit --to-all-branches尝试将更改传播到所有分支的可能性.
编辑
为了澄清我的情况,我编写代码来解决计算问题.通常情况下,我不知道哪种方法最能解决特定问题.所以我创建了一个分支.这些分支往往发散,更像是叉子.但是为了保留所有文件,我只使用一个带有多个分支的git存储库.在与所有分支/分支相关的错误的情况下,我正在寻找自动更新所有分支.
我正在寻找一种方法来创建一个包含几个子图的情节
fig, (ax0, ax1) = plt.subplots(nrows=2, sharex=True)
Run Code Online (Sandbox Code Playgroud)
会在matplotlib中做,然后可以通过ax0和解决ax1.有没有办法在Bokeh做类似的事情?在散景示例库中,我只找到了单个图.
我有一个包含项目的字典,其中键是某种正则表达式.我正在寻找一个函数,以便在传递匹配的字符串时返回匹配项的列表
d = {'a.b': item1, 'b.c':item2}
func(d,'a1b')
>>> [item1]
func(d,'b2c')
>>> [item2]
Run Code Online (Sandbox Code Playgroud)
有没有pythonic方式来做到这一点?我能想出的唯一解决方案是:
import re
def func(d, event):
res = list()
for key, item in d.iteritems():
if re.match(key, event):
res.append(item)
return res
Run Code Online (Sandbox Code Playgroud) 假设我有一个包含一些数据的类,并实现了一个返回散景图的函数
import bokeh.plotting as bk
class Data():
def plot(self,**kwargs):
# do something to retrieve data
return bk.line(**kwargs)
Run Code Online (Sandbox Code Playgroud)
现在我可以实例化多个这些Data对象exps,sets并创建单独的图.如果bk.hold()设置了它们,最终会以一个数字结尾(这基本上就是我想要的).
bk.output_notebook()
bk.figure()
bk.hold()
exps.scatter(arg1)
sets.plot(arg2)
bk.show()
Run Code Online (Sandbox Code Playgroud)

现在我希望将这些图聚合成一个GridPlot()我可以为非覆盖的单个图进行聚合
bk.figure()
bk.hold(False)
g=bk.GridPlot(children=[[sets.plot(arg3),sets.plot(arg4)]])
bk.show(g)
Run Code Online (Sandbox Code Playgroud)

但我不知道如何覆盖我之前作为exps.scatter的散点图.
有没有办法获得对当前活动数字的引用,如:
rows=[]
exps.scatter(arg1)
sets.plot(arg2)
af = bk.get_reference_to_figure()
rows.append(af) # append the active figure to rows list
bg.figure() # reset figure
gp = bk.GridPlot(children=[rows])
bk.show(gp)
Run Code Online (Sandbox Code Playgroud) 假设我有一个未知大小的列表,然后我可以使用以下命令访问最后一个元素:
>>> l = list(range(10))
>>> l[-1]
9
Run Code Online (Sandbox Code Playgroud)
但是,有没有办法通过切片对象来做到这一点
>>> s = slice(-1, 10)
>>> l[s]
[9]
Run Code Online (Sandbox Code Playgroud)
不知道我的名单的长度?
编辑:
我稍微简化了我的问题.我很好地获取一个列表,因为我稍后在子列表上进行迭代.我只需要一种方法来获得列表的最后一项,除了能够得到每一个元素等等......
python ×8
bokeh ×2
matplotlib ×2
commit ×1
dictionary ×1
git ×1
haskell ×1
ipython ×1
kernel ×1
list ×1
python-3.x ×1
regex ×1
reload ×1
slice ×1