我正在关注Apress, Beginning Python from Novice to Professional书.提到:
最后.如果需要确保执行某些代码(例如,清理代码)而不管是否引发异常,则可以使用try/finally.然后将此代码放在finally子句中.请注意,在同一个try语句中不能同时包含except子句和finally子句 - 但是可以将一个放在另一个中.
我试过这段代码:
def someFunction():
a = None
try:
a = 1 / 0
except ZeroDivisionError, e:
print 'Yesss'
print e
finally:
print 'Cleanup'
del a
if __name__ == '__main__':
someFunction()
Run Code Online (Sandbox Code Playgroud)
......而且输出是
Yesss
integer division or modulo by zero
Cleanup
Run Code Online (Sandbox Code Playgroud)
在这里,我曾经except和finally同try一部分一起使用过,不是吗?并且代码可以正常工作.我无法理解这本书的内容!
有人请澄清一下.谢谢.
码:
>>> mylist = ['abc','def','ghi']
>>> mylist
['abc', 'def', 'ghi']
>>> for i,v in enumerate(mylist):
... if v=='abc':
... mylist[i] = 'XXX'
...
>>> mylist
['XXX', 'def', 'ghi']
>>>
Run Code Online (Sandbox Code Playgroud)
在这里,我尝试更换所有出现'abc'用'XXX'.有没有更短的方法来做到这一点?
我知道可以将数据库中的图像存储为二进制大对象.但我曾经在一些论坛Web应用程序中看到它们作为平面文件存储在Web服务器机器中并在需要时检索.
两种方法的优点和缺点是什么?
何时采取哪种方法?
我需要将我的COM DLL部署为COM +应用程序.我曾经从组件服务管理器(dcomcnfg.exe)那样做.但我的要求是从命令行部署它.有命令这样做吗?
更新:如何卸载相同的?
谢谢.
是否有可用于文件操作,获取系统信息等操作的C库是通用的,可以在不同平台中编译时使用,并且行为方式类似?
编辑:像Java或.NET平台那样抽象硬件.
我有一个子类的对象扩展其超类.子类中有一个重写方法,可以使用该对象调用.是否可以使用子类对象调用超类的函数?
package supercall;
public class Main {
public static void main(String[] args) {
SomeClass obj = new SubClass();
obj.go(); //is there anything like, obj.super.go()?
}
}
class SomeClass {
SomeClass() {
}
public void go() {
System.out.println("Someclass go");
}
}
class SubClass extends SomeClass {
SubClass() {
}
@Override
public void go() {
System.out.println("Subclass go");
}
}
Run Code Online (Sandbox Code Playgroud)
考虑上面的代码.
在这里打印
子类去
.相反,我必须打印
超级去
.
我创建了一个java库项目.二进制文件可在<project-dir>/bin.测试课程可在以下网站获得<project-dir>/bin/com/myproject/test.我需要排除我的测试类的存档.所以,我写了以下代码:
<target depends="build-all" name="build-dist">
<jar destfile="app.jar" basedir="bin" excludes="com/myproject/test/*.class" />
</target>
Run Code Online (Sandbox Code Playgroud)
这很好用.但是在存档中,目录test仍然可用.如何删除?
谢谢.
我一直在Mesh Connectivity Layer这里寻找:http://research.microsoft.com/en-us/projects/mesh/.
该实现似乎仅适用于Windows XP.
有没有免费的Ad-hoc Mesh支持来帮助我进行多跳ad-hoc网状网络?我使用的是Windows 7.谢谢.
我有两个功能-一个返回Set<String>,另一个返回List<String>。
private static List<String> getStringList(final String factor) {
....
}
private static Set<String> getStringSet() {
....
}
Run Code Online (Sandbox Code Playgroud)
现在,我有一个函数可以返回a Collection<String>,然后根据特定条件依次调用上述函数。我想做这样的事情:
private static Collection<String> getStringCollection() {
Optional<String> factor = getFactor();
return factor.filter(LambdaTest::someCondition)
.map(LambdaTest::getStringList)
.orElse(getStringSet());
}
Run Code Online (Sandbox Code Playgroud)
但是我得到这个错误
错误:(24,37)java:不兼容的类型:java.util.Set无法转换为java.util.List
我能理解这里发生了什么。但是,有没有一种方法可以完成类似的任务而无需执行类似的if-else语句呢?
private static Collection<String> getStringCollection() {
Optional<String> factor = getFactor();
if(factor.isPresent() && someCondition(factor.get())) {
return getStringList(factor.get());
}
return getStringSet();
}
Run Code Online (Sandbox Code Playgroud) java ×4
python ×2
adhoc ×1
ant ×1
blobstorage ×1
c ×1
com+ ×1
database ×1
dcom ×1
deployment ×1
events ×1
exception ×1
image ×1
inheritance ×1
jar ×1
lambda ×1
list ×1
mesh ×1
networking ×1
python-2.5 ×1
python-2.x ×1
wireless ×1