gpt4 book ai didi

python - 采用 1 个位置参数,但给出了 2 个;组合字符串作为参数

转载 作者:太空宇宙 更新时间:2023-11-04 11:09:48 25 4
gpt4 key购买 nike

我是 python 的新手,甚至在搜索了 inet 之后,我也不明白这里出了什么问题。要使用 Binance API,我需要这样的命令:client.get_order_book(symbol = 'ETHBTC')

由于符号是动态的,我试过了

x1 = 'symbol = '
x2 = symbols[0].get('symbol') #Output: ETHBTC
x = x1 + "'" + x2 + "'"
print(x) #Output: symbol = 'ETHBTC'

但是当我调用

client.get_order_book(x)

它绘制错误:

TypeError: get_order_book() takes 1 positional argument but 2 were given

这是代码的其余部分:

client = Client(api_key, api_secret)

symbols = client.get_ticker()
print(symbols[0].get('symbol')) #Output ETHBTC

y = len(symbols)
for i in range(y):
x1 = 'symbol = '
x2 = symbols[i].get('symbol')
x = x1 + "'" + x2 + "'"
print(x) #Output: symbol = 'ETHBTC'
print(client.get_order_book(x))

我阅读了很多关于 self 的内容,但我不明白,在这里必须在哪里以及如何使用它?!

最佳答案

x 是文字字符串 symbol='ETHBTC',不是“已保存”关键字参数。您尝试的调用等同于

client.get_order_book("symbol='ETHBTC'"),

但此方法不接受任何位置参数(self 除外)。这是 signature :

def get_order_book(self, **params):

预打包关键字参数并模拟

client.get_order_book(symbol='ETHBTC')

你需要一个dict来封装关键字参数。

x = {'symbol': 'ETHBTC'}
client.get_order_book(**x)

关于python - 采用 1 个位置参数,但给出了 2 个;组合字符串作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58564873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com