Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从同一笔记本导入表_Python_Powershell_Jupyter Notebook_Markdown_Azure Data Studio - Fatal编程技术网

Python 从同一笔记本导入表

Python 从同一笔记本导入表,python,powershell,jupyter-notebook,markdown,azure-data-studio,Python,Powershell,Jupyter Notebook,Markdown,Azure Data Studio,如何从文本块中读取标记表并将其导入同一PowerShell笔记本中代码块中的变量 试图使用PowerShell导入 $b=Import Csv-Path-Delimiter'|' 无法确定如何将-Path参数指向同一笔记本中的文本块。在Azure Data Studio中使用.ipynb文件 我相信您正在寻找的功能是不可能的。作为一种解决方法,我建议首先将单元格标记存储为Python中的变量,并使用该变量填充打印的标记单元格。这里有一个例子。我相信它可以在任何基于iPython的笔记本电脑上运

如何从文本块中读取标记表并将其导入同一PowerShell笔记本中代码块中的变量

试图使用PowerShell导入

$b=Import Csv-Path-Delimiter'|'


无法确定如何将
-Path
参数指向同一笔记本中的文本块。在Azure Data Studio中使用.ipynb文件

我相信您正在寻找的功能是不可能的。作为一种解决方法,我建议首先将单元格标记存储为Python中的变量,并使用该变量填充打印的标记单元格。这里有一个例子。我相信它可以在任何基于iPython的笔记本电脑上运行:

#running this cell in your notebook will print the variable as Markdown
mymd = "# Some markdown"
from IPython.display import display, Markdown
display(Markdown(mymd))
更新:如果您担心表示多行降价太复杂,您有两个好的选择。首先,使用三倍引号读取作为字符串一部分的换行符:

mymd = """
| First Header  | Second Header |
| ------------- | ------------- |
| Content Cell  | Content Cell  |
| Content Cell  | Content Cell  |
"""
选项2:将您的标记放在文件中,并将其读取为字符串:

with open("somefile.md") as f:
    mymd = f.read()

任何一个选项都将受益于一个记录良好且仔细遵循的工作流程,但对于这个用例都会很好地工作。

根据对该问题的评论,该选项似乎包含
JSON
格式的文本。
:

JSON是一种开放的标准文件格式或数据交换格式 使用人类可读的文本传输由以下内容组成的数据对象: 属性–值对和数组数据类型(或任何其他可序列化的 价值)。它是一种非常常见的数据格式,具有各种各样的 应用程序,例如在
AJAX
系统中充当
XML
的替代品

JSON是一种独立于语言的数据格式。它是从 JavaScript,但许多现代编程语言都包含 生成并解析JSON格式的数据。官方互联网媒体类型 对于JSON,是application/JSON。JSON文件名使用扩展名
.JSON

此外,PowerShell还有自己的“”命令用于管理
JSON
文件:和。
ConvertFrom Json
(和
ConvertTo Json
)cmdlet没有
-Path
参数,而是将从
-InputObject
变量或流进行转换,如果信息来自文件,则可以使用cmdlet从文件检索数据:

$Data = Get-Content -Path .\YourFile.ipynb | ConvertFrom-Json

如果您的文件实际上不是通过文件系统提供的,而是通过internet上的网页提供的(我怀疑是这样),那么您需要依赖cmdlet,或者如果它涉及cmdlet上的web API。对于这些cmdlet,您需要找出并提供更多详细信息,如需要寻址的URL。

这似乎是一个恼人的问题,但为什么要这样做?根据您的用例,将标记表存储为外部文本文件并从中进行操作会更简单。如果您希望同一外部文件的内容在单元格中显示为标记,这很简单。不,这是一个公平的问题。我想在一个文件中查看部署脚本和参数。例如,在文本块中有包含所有VM参数、大小、位置、资源组、层等的降价表;然后,代码块中的脚本从同一文件中读取表,以在Azure中部署环境。因此,一个文件用于文档和参数[在表中]以及代码块中的脚本。我对实际问题有点困惑,因为问题本身表明您无法从PowerShell访问该文件(这可能有助于添加有关如何手动访问该文件的详细信息)。注释和答案更多地是关于如何读取文件的(如果是这样的话,一个文件内容的示例可能会有所帮助)。我发现一些信息表明,
.ipynb
实际上是json文件,这表明您可能希望使用其他文件,如果它确实涉及标记表,则此cmdlet可能会help@iRon确切地一旦我计算出
-Path
参数的值,在Python中创建表变量然后在PowerShell中使用它就会变得更加复杂。我想将笔记本保存到PowerShell和Markdown。更新以解决您的问题。这不是一个完美的解决方案,但它会起作用,这比替代方案要好。这仍然会导致两个单独的文件。我也可以通过PowerShell轻松地从单独的文件导入CSV。我想要一个单独的笔记本文件,用于以降价表格式提供的参数文档和部署资源的脚本。我觉得笔记本电脑应该能够从代码块中的脚本中引用文本块中的内容,但事实并非如此。据我所知没有。是的,.ipynb文件位于文件系统中。但是,将
-Path
参数指向文件将获得整个文件的内容,包括代码块。然后一个需要2个单独的文件;一个用于代码,一个用于文本。问题是如何将
-Path
指向同一文件中的特定文本块,以便代码和标记表可以位于一个文件中。不能使用
-Path
,但还有其他方法。你能提供一个相关文件的例子吗?。在不使用其他文件的情况下,如何用文本块中的表格内容填充
$Data
变量?感谢该文件,它使您的实际操作更加清晰。不幸的是,我没有答案。也许这有助于: