我最近安装了 python、ipython 和 pip,使用 pip 我安装了 socket 库,还有很多其他的,现在我无法在通过 cmd 运行 python 程序时导入 socket,但我可以使用 ipython,当我运行 ipython 时我导入套接字一切正常,现在我编写了一个简单的脚本,名为“tcp.py”,它包含的只是以下行
进口插座
Traceback (most recent call last):
 File "C:\dir\desktop\tcp.py", line 1, in <module>
  import socket
 File "C:\dir\desktop\socket.py", line 1, in <module>
  socket
NameError: name 'socket' is not defined
知道如何解决这个问题吗?
因此,正如标题所说,当我尝试将笔记本另存为 PDF 时遇到了一些麻烦:
ipython nbconvert --to latex --post PDF MyNotebook.ipynb 
我收到错误:
File "<ipython-input-4-329ffed1c22e>", line 1
ipython nbconvert --to latex --post PDF Presentacion.ipynb
                ^
SyntaxError: invalid syntax
我不知道如何解决这个问题,而且我也想将其保存为幻灯片,但我遇到同样的错误,有谁知道如何解决这个问题?
我正在使用主题可视化库 LDAvis:
## visualization of the topics
import pyLDAvis
import pyLDAvis.gensim
pyLDAvis.enable_notebook()
pyLDAvis.gensim.prepare(ldamodel, corpus, dictionary)
它生成 LDA(潜在狄利克雷分配)模型揭示的主题的主成分图像。我想下载图像,但我卡住了。任何帮助非常感谢!
我想使用 python 创建一个图表,在其中我可以看到与不同数据点相关的数据。例如,我想比较 10 种不同产品的 5 种不同品质(数据点)。
现在是否可以从下拉列表中一次选择一个数据点并显示所有 10 种产品的数据?
到目前为止,我只使用创建了简单的比较图表matplotlib。是否matplotlib有能力做到这一点?任何链接或相关文档都会有所帮助。谢谢。
每次我按“q”时,我都会被重定向到另一个 ipdb 会话。我可以关闭终端窗口,但是有更好的方法来终止循环吗?
我正在使用spyder 来运行我的代码。
from Ipython.html.widgets import interact, ButtonWidget
我尝试将 Ipython.html.widgets 替换为 ipywidgets 并执行它。它让我回想起:
from ipywidgets import interact, ButtonWidget
ImportError: cannot import name ButtonWidget"
我正在使用此代码,并且在另一个窗口中打开了一个可视化/图表,在 ipython shell 中没有任何问题:
In [1]: import numpy as np                                                                                                                            
In [2]: import matplotlib.pyplot as plt                                                                                                               
In [3]: matplotlib                                                                                                                                    
Using matplotlib backend: Qt5Agg
In [4]: x = np.linspace(0, 3*np.pi, 500)                                                                                                              
In [5]: plt.plot(x, np.sin(x**2))                                                                                                                     
Out[5]: [<matplotlib.lines.Line2D at 0x7fb6d69ab470>]
In [6]:  
检查此屏幕截图。如果我使用 matplotlib 以外的任何库,那么我不会得到任何可视化/图表。我确实在笔记本中得到了它,但在 ipython shell 中却没有。难道我做错了什么 ?
In [7]: poly = Polygon([(0,0), (0,5), (5,5), (5,0)])                                                                                                  
In [8]: print(poly)                                                                                                                                   
POLYGON ((0 0, 0 5, 5 5, 5 0, 0 0))
In [9]: print('area', poly.area)                                                                                                                      
area 25.0
In [10]: display(poly) …当我使用子图并尝试使用以下子图仅绘制一个图时,它将给出错误:
AttributeError:“AxesSubplot”对象没有属性“flat”
fig, ax = plt.subplots(nrows=nrows, ncols=ncols,figsize=figsize)
for i, ax in enumerate(ax.flat):
    ax.plot(X, Y, color='k')
如果我想任意设置子图的个数,如何解决这个问题?如何简单理解ax.flat?
我知道以前有人问过类似的问题,但我找不到任何确切的内容。假设我有这个清单:
tags = ['<div>','<body>','<h1>']
我可以在这里轻松使用 f 字符串:
for tag in tags:
   print(f'this is your tag: {tag}')
输出:
this is your tag: <div>
this is your tag: <body>
this is your tag: <h1>
到目前为止,一切都很好。但我真正想做的是获得相同的输出,但标签名称打印为例如红色。这就是我遇到括号问题的地方。如果我使用:
from IPython.display import HTML as html_print
for tag in tags:
     html_print(f'this is your tag: {tag}')
即使我删除标签,也不会打印任何内容。
我试过:
from IPython.display import Markdown, display
然后首先:
for tag in tags:
   display(f'this is your tag: {tag}')
这就像常规操作一样print.
但是,如果我尝试:
for tag in tags:    
   display(Markdown((f'this is your tag: {tag}')))
输出是:
this …我使用ipython 5.8.0的Debian 10。
这是输出的样子:
In [1]: 50*50
Out[1]: 2500
是否可以配置ipython为使用千位分隔符打印所有数字?IE:
In [1]: 50*50
Out[1]: 2'500
In [2]: 5000*5000
Out[2]: 25'000'000
也许,是否有可能ipython在输入时也理解千位分隔符?
In [1]: 5'000*5'000
Out[1]: 25'000'000
接受的答案@Chayim Friedman适用于整数,但不适用于浮点数:
In [1]: 500.1*500
Out[1]: 250050.0
此外,当它工作时,它,用作千位分隔符的字符:
In [1]: 500*500
Out[1]: 250,000
我可以用'吗?
ipython ×10
python ×8
matplotlib ×3
spyder ×2
escaping ×1
formatting ×1
gensim ×1
ipywidgets ×1
jupyter ×1
lda ×1
networking ×1
pdf ×1
python-3.7 ×1
python-3.x ×1
shapely ×1
sockets ×1
string ×1