我使用自制软件安装了python2.x和python3.x,下面列出了可执行的python路径:
$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ which python3
/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
Run Code Online (Sandbox Code Playgroud)
在python代码中编写一个shebang以使其在终端上可运行时,它太长而且不太干净:
#!/Library/Frameworks/Python.framework/Versions/2.7/bin/python OR
#!/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
Run Code Online (Sandbox Code Playgroud)
我更喜欢
#!/usr/bin/python OR
#!/usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
我的问题是,我如何正确地将macOS上的python移动或重新安装到/ usr/bin,例如
/usr/bin/pythonOR /usr/bin/python3
而不是
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
/Library/Frameworks/Python.framework/Versions/3.5/bin/python3
假设我有一个嵌套的字符串列表
lst = [['a'], ['b', 'c'], ['d', ['e', 'f']]]
Run Code Online (Sandbox Code Playgroud)
我想从嵌套列表生成所有可能的组合,如下所示:
new_lst = [['a', 'b', 'd'],
['a', 'b', 'e', 'f'],
['a', 'c', 'd'],
['a', 'c', 'e', 'f']]
Run Code Online (Sandbox Code Playgroud)
我发现了一些可能与我的问题相关的问题。 如何从 python 中的两个列表生成嵌套列表 但是,我的问题是更复杂的问题。
有没有办法避免在不使用循环的情况下创建重复的对象名称?
$venue = array();
if(loop for checking duplicate OBJ){
$temp = some_var which fetch from database;
//If it's not a duplicate object, creates new object
$venue["$temp"] = new Venue($temp);
$venue["$temp"]->do something;
}
else{
//If it's a duplicate object, don't creates new object
$venue["$temp"]->do something;
}
Run Code Online (Sandbox Code Playgroud)
我试图通过使用这样的循环检查重复的对象名称("名称"):
//检查场地阵列中每个对象的名称是否重复?
for($itr = 0;$itr < $count($venue);$itr+=1){
if($venue["$temp"]->name === $name){
return true; //If it's a duplicate object name return true
}
}
Run Code Online (Sandbox Code Playgroud)
问题是当我使用这个循环来检查时,它会耗费大量时间来完成工作