我希望用户输入一个字符串来访问字典中的一个键,然后返回它的耦合值。我确定这不是我的代码唯一的错误,但试图看看我是否有正确的想法,并希望有一些额外的方向:使用用户输入访问字典返回双精度值
主要的两个问题是编写正确的语法连接用户输入getInput()
(字符串)在函数调用func planetAndTime()
函数传递我的字典作为参数。
我的另一个问题是我回功能的双重价值。 - > Double`
func getInput() -> String{
let kb: NSFileHandle = NSFileHandle.fileHandleWithStandardInput()
let inputData: NSData = kb.availableData
let strData = NSString(data: inputData, encoding:NSUTF8StringEncoding) as! String
return strData
}
/////////
let nameOfPlanetsAndTime:[String:Double] = ["Mercury":0.00000816,
"Venus":0.00044, "Mars":0.0000239, "Jupiter":0.00062, "Saturn":0.000204,
"Uranus":0.000289, "Neptune":0.000459, "Pluto":0.000794,
"Center of the Milky Way":25000.000000, "Earth's Cousin":1400.000000]
print("Choose planet")
func planetAndTime(nameOfPlanetsAndTime: [String:Double], userLocation:String) ->Double{
let userLocation = getInput()
if (nameOfPlanetsAndTime[userLocation] < 0){
print("Not a Valid Location, Please Try Again")}
else{
nameOfPlanetsAndTime[userLocation]!
print(nameOfPlanetsAndTime)
}
}
谢谢吉列尔莫。你是对的我绝对需要更多地理解语法。不过,我觉得自己创建程序更有用。我认为这对我来说很容易,但挖到了一个洞。 – Ojay
如果您发现我的答案有用,请将其标记为正确答案? –