我有一个从Double隐式转换为Int的请求。我需要保持不变的参数格式。例如,在下面的示例中,当我打印出请求时,我发送的金额为300.0,它以Int 300而不是Double的形式发送。
d = {i: dict(zip(dt_grab, dt_change)) for i, (dt_change, dt_grab)
in enumerate(zip(df.DateChange, df.DateGrab))}
df['New_Text'] = df[['Text']].T.replace(d, regex=True).T
In [30]: df[['New_Text']]
Out[30]:
New_Text
0 Hey 11/04/1911 22|1|13 03/06/1919 d
1 things here 01/27/1918 or 03/27/1984 then
2 stuff 01/26/1912 01/15/1918 or 02/06/1917 so so
当我打印请求时,这就是我得到的:
let params = [
"id": "xxx",
"amount": 300.0
] as [String : Any]
let jsonData = try? JSONSerialization.data(withJSONObject: params)
let url = URL(string: "BASE_URL")
var request = URLRequest(url: url!)
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"
request.httpBody = jsonData
答案 0 :(得分:1)
JSON并非如此。 JSON在数字类型之间没有固有的区别。因此,您看到的JSON与放入其中的数据等效,因为300
和300.0
之间没有区别。 (当然,如果您输入了300.1
,则会看到类似300.1
的内容。)
如果客户想处理您的电话号码是Double,那取决于客户。但是您不能输入Double。只能输入数字。