小编Luk*_*vis的帖子

丢失重要的.py文件(覆盖为0byte文件),但旧版本仍然作为模块加载到IPYTHON中 - 可以检索吗?

由于我的愚蠢,在管理几个不同的屏幕会话时,其中很多人都打开了vim,在尝试"组织"我的会话的过程中,我以某种方式设法用0Byte文件覆盖了一个非常重要的.py脚本.

但是,我打开了一个ipython实例,当运行与模块相同的.py文件时,仍会记住以前的代码!

所以我刚刚学到了关于备份的一个艰难的教训(我的最后一个是关于一周前由vim完成的,这将让我有很多工作要做),或者是否有任何可能的,可想到的方法来检索.py文件从已装载的模块?我可能应该得到这样的骑士,但我在这里非常绝望.

python linux vim recovery ipython

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

Anaconda:任何方式来表明依赖性问题是否会阻止"conda更新"模块的*absolute*最新版本?

我最近发现我的numpy安装(MacOS,带anaconda)是旧版本的1.11.x,而不是最新的1.12.0,当时找不到他们网站上记录的功能.当我打字时conda update numpy,我会被告知安装是最新的.最后在尝试强制之后conda install numpy=1.12.0,出现错误,表明软件包有依赖性问题 - 结果我的astropy安装(我甚至不使用)需要numpy版本1.11.x. 卸载astropy并安装后numpy,升级到版本1.12.0成功.

我很困扰我,因为依赖性问题,anaconda没有发出任何关于忽略最新numpy版本的通知.有没有办法用力展示某种警告或旗帜?

编辑:我从这个github问题线程中看到,目前似乎没有本地方法可以做到这一点.虽然可能直到开发人员添加该功能,但是使用BASH脚本可以实现一种稍微苛刻的方式 - 比如查询可用的最新版本,然后进行conda安装和比较两个版本字符串.

python numpy anaconda conda python-3.6

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

Python列表理解与虚拟名称与迭代器名称相同:不明智?

假设我做了一个类似于下面的列表理解:

i = range(5)
a = [f(i) for i in i]
Run Code Online (Sandbox Code Playgroud)

一些功能f.使用与迭代器相同的虚拟名称会产生意想不到的结果吗?有时候,我有变量名是单个字母,并且对我来说是更具可读性坚持使用相同的字母,而不是分配一个新的,像[f(x) for x in x]代替的[f(i) for i in x](例如,如果迭代的信x有意义的,我会想什么哎呀i).

python list-comprehension python-3.x dictionary-comprehension

8
推荐指数
2
解决办法
864
查看次数

如何配置 IPython 以在每次启动时发出相同的“魔法”命令?

我希望能够使用%cd "default_dir"%matplotlib每当我打电话ipython从我的终端。我尝试将其写入 .py 文件中,.ipython/profile_default/startup/file.py但导致以下错误:

[TerminalIPythonApp] WARNING | Unknown error in handling startup files:
  File "/Users/<name>/Dropbox/.ipython/profile_default/startup/startup.py", line 18
    %cd "~/Dropbox/"
    ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

python ipython python-3.x

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

如何在python中规范化音频文件的音量:当前可用的任何包?

我有一堆AAC(.m4a)音频文件需要规范化,并希望找到一种方法来使用一些简单的python脚本来完成它.我发现这个线程上如果有人写了一个超级用户ffmpeg在python命令行实用工具,它工作得很好,但不知道是否有一些现有的pip install,将是完成这一任务.

python audio ffmpeg aac replaygain

6
推荐指数
2
解决办法
6919
查看次数

如何检查 python xarray Dataset/DataArray 对象是否已加载到内存中,或者仍然指向磁盘上的数据?

python中的包xarray似乎使用“延迟加载”来指向磁盘上的结构化数据(例如netCDF,HDF5),然后仅在“必要时”将数据加载到内存中。如何检查交互式 python 会话或 python 脚本中给定的 Dataset 或 DataArray 对象是否实际上已“加载”?

理想情况下,类似

import xarray as xr
dataset = xr.open_dataset('data.nc') 
dataset.is_loaded() # is it loaded into memory?
Run Code Online (Sandbox Code Playgroud)

不确定这是否是一个有意义的问题,但希望能够安全、自信地控制大型数据集的这种行为,这样整个文件就不会被不必要地读取。

python memory ipython python-3.x python-xarray

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

如何在tmux中将密钥绑定到“退出复制模式”?

我试图从此页面中找到“离开复制模式”的命令,但似乎prefix+q此功能仅存在键绑定;即,我找不到关联的:command-style命令。

这是否意味着不可能将另一个键绑定到“离开复制模式”?我想绑Esc钥匙。

keyboard-shortcuts tmux

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

向 matplotlib 图和轴实例添加自定义属性:不明智?

我注意到我可以将自己的属性添加到matplotlib.axes.Axes()实例中matplotlib.figure.Figure()。例如,

import matplotlib as mpl
fig = mpl.figure.Figure()
ax = fig.add_subplot()
ax.foo = 'bar'
Run Code Online (Sandbox Code Playgroud)

实际上,我可能想使用类似的方法将底图实例添加到坐标区对象

import mpl_toolkits.basemap as basemap    
ax.basemap = basemap.Basemap('mollweide', ax=ax)
Run Code Online (Sandbox Code Playgroud)

这样我就可以以更加面向对象、直观的方式添加地理特征。这是这些对象的记录/可靠特征,还是偶然?换句话说,我可以“安全”地使用它吗?

python matplotlib python-3.x matplotlib-basemap

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

如何在浏览器中消除Jupyter/ipython笔记本周围的灰色边框?

我在这个帖子中读到了如何更改Jupyter笔记本的单元格宽度(我使用了第二个答案来动态地这样做).此方法消除了左右灰色边框.

但是,这仍然在文档的顶部和底部留下灰色边框.我怎样才能删除它,以便细胞躺在干净的石板上?

html css python ipython-notebook jupyter-notebook

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

如何选择ipython笔记本中的每个单元格?

这很有用,因为我经常想在笔记本中的每个单元格上使用内置的"查找和替换"工具; 因为这个工具只适用于选定的单元格(通常只是"当前"单元格),如果我可以快速选择所有单元格,这将非常有用.

要清楚,我想在" 命令模式 "中选择单元格; 我不是在谈论突出所有文本.在我的笔记本电脑上,Cmd+A只显示所有文字.

也许一些随机插件可以做到这一点?

ipython jupyter jupyter-notebook

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

带有 %matplotlib 的 IPython shell:离开终端应用程序后,显示图形的 qt 窗口消失。这可以解决吗?

%matplotlib在我的设置中,从我的终端应用程序切换到任何其他正在运行的应用程序后,用 IPython shell 的魔法创建的图弹出窗口(不完全确定它是如何工作的)消失,然后再返回。因此,举例来说,如果我正在绘制一个图形并想要在 Chrome 中查看 StackOverflow 帖子,那么在返回到我的终端应用程序后,我必须重新声明命令plt.show()以重新打开弹出窗口。

这种行为听起来是否不典型(我的设置可能有问题),或者如果它是典型的,是否有一些可能的解决方法?这对于我的安装/操作系统来说可能是独一无二的吗?

我在 MacOS Sierra 上运行最新(刚刚更新)版本的 Anaconda 和 IPython。使用 iTerm2 和 Terminal 都会出现此问题;似乎与终端应用程序无关。

注意:我的目标是复制matlab -nodesktop在终端中生成绘图的行为,这会从 Matlab 应用程序创建持久的图形窗口。

qt matplotlib ipython python-3.x

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

为什么 Fortran 内在函数“传播”通常比显式迭代慢

我使用地球物理模型,常见的情况是需要将 2D 数据与 3D 数据相乘、相加等。下面是一个例子。

module benchmarks
  implicit none
  integer, parameter :: n=500
  integer :: k
  real :: d2(n,n)
  real :: d3(n,n,n)
  contains
  ! Iteration
  subroutine benchmark_a(res)
    real, intent(out) :: res(n,n,n)
    do k = 1, size(d3,3)
      res(:,:,k) = d2*d3(:,:,k)
    end do
  end subroutine
  ! Spread
  subroutine benchmark_b(res)
    real, intent(out) :: res(n,n,n)
    res = d3*spread(d2, 3, size(d3,3))
  end subroutine
end module

program main
  use benchmarks
  real :: t, tarray(2)
  real :: res(n,n,n)
  call random_number(d2)
  call random_number(d3)
  ! Iteration
  call dtime(tarray, t) …
Run Code Online (Sandbox Code Playgroud)

fortran gfortran fortran90

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

在不完整/未填充的行中将matplotlib图例条目居中?

假设我要制作一个包含五个项目的地块,并且只有空间来创建具有3列的图例(多列比这太宽了),例如

import matplotlib.pyplot as plt
f, a = plt.subplots()
for i in range(5):
    a.plot(np.arange(10),np.random.rand(10),label='Item #%d'%i)
a.legend(ncol=3)
Run Code Online (Sandbox Code Playgroud)

底部行中的尾随两个条目向左对齐,在右侧留有很大的空白空间,这在美学上不是很令人满意。当您必须标记大量行时,这尤其成问题。

有什么方法可以使未填充行中的条目居中吗?

python plot matplotlib legend python-3.x

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