我对这两个短代码有2个问题。
1
name = input('what: ')
print(name)
输出
what: 641u
Traceback (most recent call last):
File "/Users/vuthynun/PycharmProjects/untitled1/h/__init__.py", line 1, in <module>
name = input('what: ')
File "<string>", line 1
641u
^
SyntaxError: unexpected EOF while parsing
Process finished with exit code 1
为什么它会给我这个错误?
2
name = input('what: ')
print(type(name))
输出:
what: 23
<type 'int'>
Process finished with exit code 0
为什么名称类型为int?我以为所有输入都转换为字符串。
请帮助我理解这一点。它杀了我。
答案 0 :(得分:3)
在python 2中使用 var appdelgateObj = UIApplication.shared.delegate as! AppDelegate
if let destinationVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: “ToPresentVC”) as? ToPresentVC {
if let window = appdelgateObj.window , let rootViewController = window.rootViewController {
var currentController = rootViewController
while let presentedController = currentController.presentedViewController {
currentController = presentedController
}
currentController.present(destinationVC, animated: true, completion: nil)
}
}
代替raw_input
。
这就是你如何获得字符串。否则python会评估你给它的东西,这会给你意想不到的行为。
答案 1 :(得分:-1)
这是Python 2.7
中的行为。您通过input
接受的任何内容都将转换为int
类型,而您通过raw_input
接受的任何内容都将转换为str
类型。
对于Python 3
中的行为,请检查:What's the difference between raw_input() and input() in python3.x?