def construct_url(data):
...
return url
def scrape_url(url):
... # fetch url, extract data
return parsed_data
for i in mylist:
url = construct_url(i)
data = scrape_url(url)
... # use the data to do analysis
我考虑过的一些方法:
Python标准测试工具,如doctest和unittest可以直接在笔记本中使用。
在DocString中具有函数和测试用例的笔记本单元格:
def add(a, b):
'''
This is a test:
>>> add(2, 2)
5
'''
return a + b
运行DocStrings中所有测试用例的笔记本单元格(笔记本中的最后一个):
import doctest
doctest.testmod(verbose=True)
Trying:
add(2, 2)
Expecting:
5
**********************************************************************
File "__main__", line 4, in __main__.add
Failed example:
add(2, 2)
Expected:
5
Got:
4
1 items had no tests:
__main__
**********************************************************************
1 items had failures:
1 of 1 in __main__.add
1 tests in 2 items.
0 passed and 1 failed.
***Test Failed*** 1 failures.
def add(a, b):
return a + b
import unittest
class TestNotebook(unittest.TestCase):
def test_add(self):
self.assertEqual(add(2, 2), 5)
unittest.main(argv=[''], verbosity=2, exit=False)
test_add (__main__.TestNotebook) ... FAIL
======================================================================
FAIL: test_add (__main__.TestNotebook)
----------------------------------------------------------------------
Traceback (most recent call last):
File "<ipython-input-15-4409ad9ffaea>", line 6, in test_add
self.assertEqual(add(2, 2), 5)
AssertionError: 4 != 5
----------------------------------------------------------------------
Ran 1 test in 0.001s
FAILED (failures=1)
在调试失败的测试时,在某个时刻停止测试用例的执行并运行调试器通常很有用。为此,在要停止执行的行之前插入以下代码:
import pdb; pdb.set_trace()
例如:
def add(a, b):
'''
This is the test:
>>> add(2, 2)
5
'''
import pdb; pdb.set_trace()
return a + b
对于本例,下次运行doctest时,执行将在return语句和Python调试器(pdb)启动之前停止。您将直接在笔记本中获得一个pdb提示符,这将允许您检查a
和B
的值、跨行等。
问题内容: 我正在尝试为Jupyter Notebook内的平台制作教程 在某个时候,我需要在像这样的单元中运行linux命令: 但无法弄清楚如何输入sudo通行证,并且我不想用sudo运行jupyter Notebook,知道如何执行此操作吗? 问题答案: 更新: 我检查了所有方法,所有方法都有效。 1: 请求密码,该密码实际上会隐藏用户的输入,然后在python中运行sudo命令。 2: 上述
问题内容: 我正在研究Jupyter Notebook,并希望通过使用Google GPU使其运行更快。我已经进行了一些研究并找到了解决方案,但是它对我没有用。 解决方案是: “最简单的方法是使用Connect to Local Runtime, 然后选择硬件加速器作为GPU,如Google Colab Free GPU Tutorial中所示 。” 我确实设法将googe colab连接到jup
在Anaconda Navigator中,我切换到在tensorflow上运行应用程序,并安装了jupyter 5.6.0。然后我打开一个蟒蛇3笔记本。然后我导入tensorflow、keras和numpy,没有问题。然后,当我尝试导入matplotlib时,笔记本上显示ImportError:没有名为“matplotlib”的模块。 在激活tensorflow后,我尝试在我的anaconda提示
在wsl(Windows linux子系统)中的conda虚拟环境中运行jupyter笔记本时,复制粘贴url将不起作用。它总是显示“响应时间太长”或“连接超时”。
Jupyter笔记本(Python)以漂亮的打印格式返回单元格中最后一个变量的值。 使用打印(df)不会将数据框打印得很好。但这会很好地打印到Jupyter笔记本上: 如何以漂亮的打印格式打印多个变量? 这里只会以漂亮的打印格式打印: 答案如下(摘自:在iPython笔记本中将数据框显示为表)
我正在尝试从git下载Jupyter笔记本。我通过右键单击文件并保存它来下载笔记本。这是一个ipynb文件,但对于它应该包含的内容(114 kb),文件大小对我来说似乎有点大。当我点击Jupyter中的笔记本时,出现以下错误: 无法读取的笔记本:C:\filename。ipynb NotJSONError(“笔记本似乎不是JSON:”\n\n 如何解决此错误,以及如何打开笔记本?