小编Pan*_*Yan的帖子

如何隐藏IPython Notebook中的一个特定单元格(输入或输出)?

有没有办法在IPython笔记本中有选择地隐藏一个特定的输入或输出单元?

我只能找到以下代码来显示/隐藏所有输入单元格.

http://blog.nextgenetics.net/?e=102

但是,如果我只想隐藏笔记本的第一个输入单元怎么办?

ipython ipython-notebook

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

在IPython Widgets中,如何使用新值更新DropDown小部件?

我创建了一个DropDown小部件:

self.foo_widget = widgets.Dropdown(description='Lorem ipsum', width=100)
self.foo_widget.options = ['Default', 'A', 'B', 'C', 'D']
Run Code Online (Sandbox Code Playgroud)

我抓住了这个on_trait_change事件:

self.foo_widget.on_trait_change(self.handler, 'value')
Run Code Online (Sandbox Code Playgroud)

现在在处理函数中handler,我想将DropDown值设置回'Default'.但以下代码仅更改值而不更新窗口小部件显示.即使print self.foo_widget.value显示为"默认" ,DropDown仍会显示原始选择值(例如,"C").

self.foo_widget.value = 'Default'
Run Code Online (Sandbox Code Playgroud)

这是IPython Widget的错误吗?导致更新视图的正确方法是什么?

实际上,对于列表小部件,似乎我必须清除选项并再次分配选项以使小部件的显示更新.有没有类似的经历?

更新:以下 nluigi的答案很有效.如以下示例所示.

class test(object): 
    def __init__(self):
        self.foo_widget = widgets.Dropdown(description='Lorem ipsum', width=100)
        self.foo_widget.options = ['Default', 'A', 'B', 'C', 'D']
        self.foo_widget.on_trait_change(self.handler, 'value')
        display(self.foo_widget)

    def handler(self, name, old, new):
        print(self.foo_widget.value)
        print(self.foo_widget.selected_label)
        self.foo_widget.value = 'Default'
        self.foo_widget.selected_label = 'Default'
Run Code Online (Sandbox Code Playgroud)

python user-interface ipython-notebook

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

在IPython Notebook中,如何以编程方式获取屏幕分辨率、浏览器窗口宽度和当前笔记本单元格宽度?

我想根据笔记本窗口的宽度设置小部件的宽度。用户计算机的分辨率、当前窗口大小以及他们为笔记本设置 CSS 的方式都会影响这一点。

有没有办法在Python代码中获取屏幕分辨率、浏览器窗口宽度和/或当前笔记本单元格宽度?

html css python screen-resolution jupyter-notebook

6
推荐指数
0
解决办法
821
查看次数

如何将 cx_oracle 与 Pyinstaller 捆绑在一起

我的目标是使用 Pyinstaller 从一个使用 Tkinter 和 cx_oracle 访问数据库的简单 python 脚本中捆绑一个 exe 文件。python代码是在安装了Anaconda、cx_oracle包和oracle客户端的windows机器上开发的。然后我需要在许多没有oracle 客户端或 Python 的目标 Windows 机器上运行 exe 文件。

我在开发机器上使用 Python 2.7 和 Pyinstaller 3.1。

我在网上搜索了一段时间,但只找到了一个教程:https : //mail.python.org/pipermail/tutor/2014-December/103608.html

我按照相同的步骤修改了规范文件,如下所示:

# -*- mode: python -*-

block_cipher = None


a = Analysis(['mycode.py'],
             pathex=['C:\\Users\\myuser\\PycharmProjects\\mycode'],
             binaries=None,
             datas=None,
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          a.binaries + [('oraociei11.dll','D:\ProgramFiles\Anaconda2\oraociei11.dll','BINARY')],
          a.zipfiles,
          a.datas,
          name='mycode',
          debug=False,
          strip=False,
          upx=True,
          console=True )
Run Code Online (Sandbox Code Playgroud)

捆绑工作。代码在安装了 oracle 客户端的原始机器上运行。但是在没有 oracle 客户端的单独机器上,它无法运行,并显示以下错误消息:

Tkinter 回调 Traceback …

python oracle cx-oracle pyinstaller

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

python seaborn lmplot regplot用于y对数刻度拟合

我想知道为什么seaborn lmplot和regplot仅具有执行logx的选项。我经常使用线性拟合log(y)〜x,并且Y轴应始终在对数刻度上以显示相关性(按照惯例)。

这在Seaborn中可以完成吗?

选择logy = True会很好...

谢谢。

python seaborn

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