字符串末尾的 Percent-S (%s) 有什么用? (不是字符串格式)
What is the use of Percent-S (%s) at the end of strings? (Not string formatting)
我正在尝试为 Jupyter Notebook 配置浏览器,在 .jupyter 配置文件中,我对这一行感到困惑。
字符串末尾的%s是什么意思?
c.NotebookApp.browser = u'open -a chrome.exe %s'
当我在互联网上搜索字符串中的 %s 时,我得到了与字符串格式相关的页面(其中字符串后跟一个额外的 % 变量,以将变量替换为字符串)。 这完全不相关不是吗?
该字符串可能会传递给 sprintf()
,它会插入一个字符串参数来代替 %s
。参见 man printf
。
在这种情况下,URL 作为打开命令的参数插入。
配置文件格式的作者决定在这里使用字符串格式,所以你可以在字符串的任何地方插入 URL 参数,而不仅仅是在它的末尾,即:
c.NotebookApp.browser = u'/usr/bin/my_browser -new -url %s -some -more -parameters'
然后在应用程序运行时,URL 参数以字符串格式注入:
shellCmd = config.NotebookApp.browser % targetUrl
很重要。不要删除它。
我正在尝试为 Jupyter Notebook 配置浏览器,在 .jupyter 配置文件中,我对这一行感到困惑。
字符串末尾的%s是什么意思?
c.NotebookApp.browser = u'open -a chrome.exe %s'
当我在互联网上搜索字符串中的 %s 时,我得到了与字符串格式相关的页面(其中字符串后跟一个额外的 % 变量,以将变量替换为字符串)。 这完全不相关不是吗?
该字符串可能会传递给 sprintf()
,它会插入一个字符串参数来代替 %s
。参见 man printf
。
在这种情况下,URL 作为打开命令的参数插入。
配置文件格式的作者决定在这里使用字符串格式,所以你可以在字符串的任何地方插入 URL 参数,而不仅仅是在它的末尾,即:
c.NotebookApp.browser = u'/usr/bin/my_browser -new -url %s -some -more -parameters'
然后在应用程序运行时,URL 参数以字符串格式注入:
shellCmd = config.NotebookApp.browser % targetUrl
很重要。不要删除它。