标签: python-idle

如果文件不存在,则正常退出

我在Python 3.2.3中有以下脚本:

try:
    file = open('file.txt', 'r')
except IOError:
    print('There was an error opening the file!')
    sys.exit()

#more code that is relevant only if the file exists
Run Code Online (Sandbox Code Playgroud)

如果文件不存在(或打开它只是一个错误),如何正常退出?

我可以使用exit(),但会打开一个对话框面板,询问我是否要杀死该应用程序.

我可以使用sys.exit(),但这会引发一个SystemExit异常,它在输出中看起来不太好.我明白了

Traceback (most recent call last):   
File "file", line 19, in <module>
    sys.exit() SystemExit
Run Code Online (Sandbox Code Playgroud)

我可以使用os.exit(),但这会在C级别上杀死Python,而不会进行任何我可能正在执行的清理工作.

我可以使用布尔变量并将所有后续代码包装在if ...但这很难看,这不是我正在执行的唯一检查.所以我想要六个嵌套的ifs ......

我只想打印'有一个错误......'并退出.我在IDLE工作.

python python-idle

21
推荐指数
1
解决办法
3万
查看次数

Python IDLE:更改Python版本

我的机器上有Python 2.x和3.x(Mac OS X 10.6).对于某些我想要使用版本2的东西,但对于其他我想要版本3.我喜欢IDLE软件进行编辑/运行,但它总是使用版本3.

有没有办法更改IDLE使用的解释器版本?

谢谢!

python editor version python-idle

19
推荐指数
2
解决办法
4万
查看次数

Python IDLE.自动完成/显示完成无效

IDLE在实际显示自动完成菜单的时候非常狡猾.最近它根本没有工作,或者更具体地说,只在交互式会话期间工作.

我一直在使用Code Blocks for C,并且已经习惯了非常好的自动完成功能,所以没有它们有点令人沮丧 - 特别是在尝试学习新的框架工作以及与哪个类相关联时方法等等.

是否有一个简单的方法可以让IDLE自动完成再次工作?我正在使用python版本2.7.

是否有一个简单的编辑器我应该研究一下?我已经尝试过Vim,它对我的​​简单需求来说有点太重了,Ninja,我无法为任何事情工作,而Sublime文本2,我无法得到我的wxpython游戏.什么是一个不错的选择?任何类似于Code Blocks的东西都会很酷,但是,如果IDLE能够始终如一,我会非常满意!

请求澄清: 好的,所以看起来我可能有一些我的术语倒退了.通过非交互式,我的意思是,例如,右键单击py文件并选择"使用IDLE编辑".这提出了我认为可以描述为文本编辑器的内容.您可以在这里输入所有代码.准备好之后,然后点击F5,或选择Run,它会启动(我称之为)交互式终端.在这里,您可以输入代码,按回车键,并立即评估该代码.

我的问题是指前者,IDLE中编辑代码的部分.有时在打字时,经过一次.它将显示可用的方法,或者在打开括号后,它将给出关于预期值的提示.但问题是,有时它会做这些事情,有时却没有.

python autocomplete codeblocks python-idle

18
推荐指数
2
解决办法
4万
查看次数

即使我安装了较新的版本,IDLE警告旧的TCL版本

ActiveTcl8.6.1.1.297588-macosx10.5-i386-x86_64-threaded在OS X 10.9.1上安装了.但是,当我idle3从终端运行启动IDLE时,IDLE窗口中会显示以下警告:

Python 3.3.3 (v3.3.3:c3896275c0f6, Nov 16 2013, 23:39:35) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "copyright", "credits" or "license()" for more information.
>>> WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.
Run Code Online (Sandbox Code Playgroud)

为什么我安装的较新的ActiveTcl版本无法被IDLE识别?我怎么能纠正这个?

编辑:更多细节.

$ echo $PATH
/Library/Frameworks/Python.framework/Versions/3.3/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

$ which tclsh
/usr/bin/tclsh

$ ls -l /usr/bin/tclsh*
lrwxr-xr-x  1 root  wheel  17 Jan 15 10:45 /usr/bin/tclsh -> /usr/bin/tclsh8.6
lrwxr-xr-x  1 root  wheel  67 Oct …
Run Code Online (Sandbox Code Playgroud)

macos tcl python-idle

18
推荐指数
3
解决办法
2万
查看次数

有没有办法在web.config中配置应用程序池的"空闲超时"?

我知道可以设置会话超时.但是,如果应用程序本身在给定的时间段内没有收到任何请求,IIS将关闭应用程序.

此行为可在IIS管理控制台中配置,我知道如何执行此操作.不过,我想知道是否可以在web.config中配置它.

iis web-config application-pool python-idle

15
推荐指数
1
解决办法
1万
查看次数

Python错误 - IDLE的子进程没有建立连接.IDLE无法启动或个人防火墙软件阻止连接

我是编程新手,我决定先学习Python,所以;

我安装了Python,最新版本3.4.我正在尝试打开Python IDLE(GUI)模式,所以当我打开时,我收到消息"IDLE的子进程没有建立连接.无论是IDLE无法启动还是个人防火墙软件阻止连接."

我的防火墙没问题,因为我把Python放在了它身上.我也尝试重新安装它并没有做出不同之处.所以,如果有人可以提供帮助,请

谢谢你的时间:D

python user-interface subprocess runtime-error python-idle

13
推荐指数
2
解决办法
7万
查看次数

在Windows上使用IDLE(Python GUI)上下文菜单进行编辑&nbsp; 7

在Windows XP下,我有一个上下文菜单条目"使用IDLE编辑"用于Python源文件.我试图在Windows 7(32位)下通过设置相应的注册表项来完成这项工作

HKEY_LOCAL_MACHINE\SOFTWARE\.py\shellex\ContextMenuHandlers\
Run Code Online (Sandbox Code Playgroud)

但是没有成功 - 上下文菜单条目不会出现.如何在Windows 7中为特定文件类型设置上下文菜单项?

python contextmenu windows-7 python-idle

12
推荐指数
2
解决办法
9616
查看次数

如何在IDLE中重新加载Python模块?

我试图了解我的工作流程如何与Python和IDLE一起使用.

假设我写了一个函数:

def hello():
    print 'hello!'
Run Code Online (Sandbox Code Playgroud)

我把文件保存为greetings.py.然后在IDLE中,我测试了这个函数:

>>> from greetings import *
>>> hello()
hello!
Run Code Online (Sandbox Code Playgroud)

然后我改变了程序,并想再试hello()一次.所以我reload:

>>> reload(greetings)
<module 'greetings' from '/path/to/file/greetings.py'>
Run Code Online (Sandbox Code Playgroud)

然而,这种变化并未得到改善.我究竟做错了什么?如何重新加载更改的模块?

我一直在阅读关于SO的一些相关问题,但没有一个答案对我有帮助.

python module reload python-idle

12
推荐指数
2
解决办法
6723
查看次数

我可以使用什么代码来检查Python是否在IDLE中运行?

正如标题所说.我想编写一个行为不同的脚本,具体取决于它是在控制台窗口内运行还是在IDLE中运行.是否存在仅在IDLE中运行时才能检查的对象?环境变量?

我在Windows上使用Python 2.6.5和2.7.

编辑:

到目前为止给出的答案有效.但我正在寻找一种正式的方法,或者看起来不像黑客.如果有人想出一个,我会接受这个答案.否则,在几天之内,我会接受最早的答案.感谢大家!

python python-idle

11
推荐指数
3
解决办法
4203
查看次数

使用Python(空闲)将JSON转换为CSV

我有一个纬度/经度的JSON文件,我想要转换为CSV文件.我想用Python做到这一点.我已阅读/尝试了所有其他stackoverflow和谷歌搜索结果的建议.我已经设法创建了CSV并包含标题,但除此之外,愚蠢的东西开始发生.到目前为止,这是我的代码的工作部分:

import json, csv

x="""[
    {"longitude":"-73.689070","latitude":"40.718000"},
    {"longitude":"-73.688400","latitude":"40.715990"},
    {"longitude":"-73.688340","latitude":"40.715790"},
    {"longitude":"-73.688370","latitude":"40.715500"},
    {"longitude":"-73.688490","latitude":"40.715030"},
    {"longitude":"-73.688810","latitude":"40.714370"},
    {"longitude":"-73.688980","latitude":"40.714080"},
    {"longitude":"-73.689350","latitude":"40.713390"},
    {"longitude":"-73.689530","latitude":"40.712800"},
    {"longitude":"-73.689740","latitude":"40.712050"},
    {"longitude":"-73.689820","latitude":"40.711810"},
    {"longitude":"-73.689930","latitude":"40.711380"},
    {"longitude":"-73.690110","latitude":"40.710710"}
]"""

x = json.loads(x)

f = csv.writer(open("test.csv", "wb+"))

f.writerow(["longitude", "latitude"])
Run Code Online (Sandbox Code Playgroud)

它在哪里崩溃("?"意味着我不知道该放在那里.我已经尝试了各种各样的组合,我在寻找答案时发现了这些组合):

for ? in ?:
    f.writerow([?[?],?[?]])
Run Code Online (Sandbox Code Playgroud)

我从little_fish得到了上述问题答案.我可以看到我们的JSON示例略有不同,我认为这与我无法使其工作的原因有关...

任何帮助将不胜感激,如果需要,我很乐意提供澄清.仅供参考,我是Python的新手,所以如果你要使用行话,请尽可能清楚地解释.谢谢!(PS不确定是否重要,但我使用的是IDLE).

python csv json python-idle

11
推荐指数
1
解决办法
1万
查看次数