在过去几年中,我已经安装了许多Python库和各种Python版本.为了让它们立即工作,我盲目地安装它们而没有控制.目前,当我尝试安装调用numpy,scipy和matplotlib的pynest时,它们会导致问题.经过努力,我将清理并重新安装Python和库.
经过调查,我在我的系统上找到了Python 2.5/2.6/2.7/3.2,并且每个都有一些副本或其他东西:(我的OS == Mac OS X 10.7.5 Lion)
/Library/Frameworks/
/opt/local/Library/Frameworks/
/opt/local/bin/
/Applications/
/usr/local/bin/
/usr/bin/
/System/Library/Frameworks/
我知道拥有这些我很疯狂.现在我除去了所有这些东西/System/Libarary/Frameworks
(我从未删除过任何东西/System/Library/
).干净的工作之后,which python
现在给出了/usr/bin/python
哪些链接/System/Library/Frameworks
.
现在,重新安装python是一个明确的环境吗?如何仔细检查是否存在其他版本?我应该如何重新安装它们以保证它们和它们的库不会到处都有并且可以再次复制许多副本?
我想在一个合适的位置安装一个干净的Python 2.7,让我的系统确切地知道它在哪里,并且永远不会在其他地方安装任何库.请给我一些建议,告诉我如何以专业的方式管理它.
为了您的信息,这是我的最新信息$PATH
,我认为应该修改:
/opt/local/bin:/opt/local/sbin:/opt/nest/lib/python2.7/site-packages:/usr/local/lib/python2.7/site-packages:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/texbin:/Library/Frameworks/Python.framework/Versions/3.2/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/django/bin:/usr/X11/bin:/opt/local/bin:/opt/local/sbin:/usr/local/lib/python2.7/site-packages:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/3.2/bin
Run Code Online (Sandbox Code Playgroud)
如果您需要更多信息,请告知我们.谢谢!
更新:
我正在重新思考为什么它变得如此疯狂.我相信这是因为我通过以下方式安装了东西:
easy_install
/ macports
/ homebrew
/ fink
/ pip
有时候;.dmg
有时; .pkg
有时;他们在不同的地方制作东西.我想知道这些方法背后的机制是什么?他们如何选择目标位置?如何防止他们搞砸了?
我正在使用numpy
/ scipy
/ pynest
在Mac OS X上进行一些研究计算.为了提高性能,我们从我们大学租用了一个400节点的集群(带有Linux),以便可以并行完成任务.问题是我们不允许在集群上安装任何额外的软件包(没有sudo
或任何安装工具),它们只提供原始python本身.
如何在群集上运行我的脚本呢?有没有办法集成模块(numpy和scipy也有一些我认为编译的二进制文件),以便它可以解释和执行而无需安装包?
假设我有一个python解释器,在我的本地系统上安装了许多模块,并且它已被调整为正常工作.
现在我想创建一个virtualenv来冻结它们,这样它们将来不会被升级打破.
我该怎么做?谢谢.
我无法使用pip freeze
,因为那是一个没有的集群pip
,我没有安装它的权限.而且我也不想重新安装模块,我正在寻找是否有克隆方式.
我在Windows Azure上运行Web角色以接收AAC音频文件(由base64字符串上传)并将它们存储到blob中.它现在工作正常.
接下来,我还必须将它们转换为MP3并将MP3存储到blob中.我决定使用像ffmpeg.exe -i path .aac path .mp3这样的东西.
问题是:
如果你知道,请帮助我.先感谢您.
我在iOS 5.0下开发了一个iPhone应用程序,它运行正常.但是当谈到iOS 4.3(Base SDK =最新iOS 5.0,编译器= Apple LLVM 3.0,部署目标= iOS 4.3)时,它在启动后崩溃.
崩溃点周围的输出如下:
2011-12-06 16:25:08.177 FMWei[466:c203] -[AVAudioSession setMode:error:]: unrecognized selector sent to instance 0x706a7f0
2011-12-06 16:25:08.181 FMWei[466:c203] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[AVAudioSession setMode:error:]: unrecognized selector sent to instance 0x706a7f0'
Run Code Online (Sandbox Code Playgroud)
在我调用它时,它看起来AVAudioSession
没有成员函数setMode:error:
.但奇怪的是我没有调用名字的函数setMode:error:
.有关音频处理的代码是:
audio_session = [[AVAudioSession sharedInstance] retain];
audio_session_err = nil;
[audio_session setCategory: AVAudioSessionCategoryPlayAndRecord error:&audio_session_err];
NSLog(@"!");
UInt32 audioRouteOverride = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,sizeof (audioRouteOverride),&audioRouteOverride);
UInt32 allowMixing = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof(allowMixing), &allowMixing);
if (audio_session_err)
{
NSLog(@"audioSession: …
Run Code Online (Sandbox Code Playgroud) 码:
- (void) foo : (NSString*) ori_string
{
her_string = [ori_string copy];
while ([her_string length]>0)
{
her_string = [her_string substringFromIndex:1];
//do something...
}
[her_string release]; //Here is the problem
}
Run Code Online (Sandbox Code Playgroud)
大家好,
如果我her_string
像上面那样发布,分析师说it's an incorrect decrement of the reference count of an object that is not owned at this point by the caller
.
否则,如果我不释放它,它说这是一个潜在的内存泄漏.
我应该在哪里以及如何发布它?谢谢!
我有一个类,它将被实现为许多实例.我想保持一些实例之间的连接,并在它们之间传递消息.在C++中,我可以这样做:
class A
{
A (*connections)[];
int sum;
public:
void pass(int index)
{
connections[index] -> receive(sum);
}
void receive(int input)
{
sum += input;
}
}
Run Code Online (Sandbox Code Playgroud)
然后我只需要添加其他实例的指针connections[]
,我可以互相传递消息.
目前我必须使用Python来做这件事,但Python不支持指针.我想知道解决这个问题的正确解决方案或设计模式是什么?
先感谢您.