是什么区别let,并var在苹果的雨燕语言?
根据我的理解,它是一种编译语言,但它不会在编译时检查类型.这让我感到困惑.编译器如何知道类型错误?如果编译器没有检查类型,那么生产环境是不是有问题?
我希望在使用时获得响应时间urllib.我在下面编写代码,但它不仅仅是响应时间.我可以花时间使用urllib或有其他方法吗?
import urllib
import datetime
def main():
urllist = [
"http://google.com",
]
for url in urllist:
opener = urllib.FancyURLopener({})
try:
start = datetime.datetime.now()
f = opener.open(url)
end = datetime.datetime.now()
diff = end - start
print int(round(diff.microseconds / 1000))
except IOError, e:
print 'error', url
else:
print f.getcode(), f.geturl()
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud) 我试图从 Swift 中的类中获取初始化程序的所有签名。初始化程序可以镜像,我可以找到如下代码所示的签名。
enum MessageType {
case say
case shout
case wisper
}
class Message {
var text = ""
var type : MessageType = .say
init(text: String, type: MessageType) {
self.type = type
self.text = text
}
init(text: String) {
self.text = text
}
}
let firstInit = Message.init(text:)
let secondInit = Message.init(text:type:)
let firstMirror = Mirror(reflecting: firstInit)
let secondMirror = Mirror(reflecting: secondInit)
print(firstMirror.subjectType)
// (String) -> Message
print(secondMirror.subjectType)
// ((String, MessageType)) -> Message
Run Code Online (Sandbox Code Playgroud)
但是,此代码需要指定init我要查找的内容。我所期望的是如下所示:
let mirror …Run Code Online (Sandbox Code Playgroud)