【问题标题】:How to launch a Python Spyder session through script / shortcut?如何通过脚本/快捷方式启动 Python Spyder 会话?
【发布时间】:2017-05-10 04:45:48
【问题描述】:

我有这段代码可以在 Anaconda 2、Python 2.7 中启动 Spyder IDE:

from spyderlib import start_app
main1= start_app.main()
main1.load_session('/project27/_test01_.session.tar')

'''
from spyderlib.utils.iofuncs import load_session
load_session(filename+'.session.tar')
'''

加载会话的代码方法在这里:https://github.com/jromang/spyderlib/blob/master/spyderlib/spyder.py

    #---- Sessions
    def load_session(self, filename=None):
        """Load session"""
        if filename is None:
            self.redirect_internalshell_stdio(False)
            filename, _selfilter = getopenfilename(self, _("Open session"),
                        getcwd(), _("Spyder sessions")+" (*.session.tar)")
            self.redirect_internalshell_stdio(True)
            if not filename:
                return
        if self.close():
            self.next_session_name = filename

第一部分来自 Anaconda Scripts 其中 Spyder 脚本。 似乎无法加载会话。

【问题讨论】:

    标签: python-2.7 ipython spyder


    【解决方案1】:

    在 Spyder 3.0 中删除了 Spyder 会话。现在 Projects 也提供了相同的功能(它还将打开的文件列表保存在编辑器中),所以请更新到那个版本。

    此外,Spyder 3.1 将附带一个名为 --project 的新选项,用于在启动时加载项目(Spyder 3.1 将于 2017 年 1 月 17 日发布)。

    【讨论】:

      【解决方案2】:

      对于仍然只使用 Spyder 2.0 (....) 的人,有一个小技巧可以创建会话的快捷方式(SPyder 会话直接使用快捷方式启动)。 在这里,代码:

      # -*- coding: utf-8 -*-
      import sys, time, os
      file_session= ''
      if len(sys.argv) > 1 : 
        file_session= sys.argv[1]
        print file_session
      
      sys.argv= sys.argv[:1]
      
      
      from spyderlib import start_app
      if file_session != '' :
        main1= start_app.main( file_session)
      else :
        main1= start_app.main()
      

      【讨论】:

        猜你喜欢
        • 2020-04-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-07
        • 1970-01-01
        • 2017-03-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多