【问题标题】:How to do a commparator that selcet certain certain row in function of characteristics?如何做一个比较器,根据特性选择某些特定行?
【发布时间】:2020-11-04 16:19:39
【问题描述】:

所以我正在尝试根据谷歌表格进行订阅比较。 g 表在第一行具有订阅特征,并且每隔一行是订阅 (g sheets so you can see what I mean) 我尝试了不同的方法,但他们没有成功其中任何一个(this one was great 但是它发送了太多请求,因此 API 在 100 个请求/100 秒后阻止了我。我还尝试将链接/取消链接方法应用于批处理命令,但它也不起作用)。

因此我需要你的帮助。不过,我对 python 的了解非常少。我已经下载了 pygsheets,但我真的不在乎我需要做什么才能成功。

如果你想要一个例子,它会是这样的:用户输入他想要的价格、GB 的移动数据等,它会返回符合他的条件的订阅。在这里,我只是要求解决第一部分,即拥有符合条件的行;用户输入条件问题暂时不存在。

【问题讨论】:

  • 请准确说明您要查找的内容(可能有示例),您的问题非常不清楚。
  • @Nithin 我已经编辑了帖子。我希望它更清楚。
  • 你的问题我还不清楚。使用样品表中的数据,举例说明您想要什么,以及您希望它出现在哪里,如有必要,请手动输入结果。例如。用户会输入什么值 - 每月 GB、成本等? - 使用真实值,并显示应该产生什么结果,以及从哪张纸上。您有很多工作表,我不清楚应该如何使用它们来过滤您的结果。
  • 这是我电脑的两个屏幕记录,一个显示我希望我的代码做什么,另一个是我的 Google 表格的解释。 youtu.be/6yggsn9MXh4youtu.be/ug6JL_TuN3E。如果我的解释不够清楚,也许我们可以打个 Discord 电话之类的。这将使我能够更好地向您解释我希望我的应用程序做什么。
  • 很抱歉,这里的人通常不愿意观看 YouTube 视频来了解您的问题。您的问题和样本表需要包含所有必要的信息,以便此问答也可以帮助未来遇到类似问题的人。请在此处查看如何提出一个好问题:stackoverflow.com/help/how-to-ask。对于与 Google 表格相关的问题,您的示例表应包含清楚地提出问题所需的最少信息,以显示您尝试过但没有奏效的内容,以及您希望结果的样子。跨度>

标签: python google-sheets google-sheets-api pygsheets


【解决方案1】:

我不确定您所说的订阅比较器是什么意思。无论如何,根据您的链接问题,我已经更新了接受的答案以减少 api 调用。

#list of all values in 4th/price column
prices=wks.get_cols(4) 
#Remove nonnumeric characters from prices
prices=[p.replace('*','') for p in prices[1:]]

#Get indices of rows with price >=50
##i+2 to account for one indexing and removing header row
indices=[i+2 for i,p in enumerate(prices) if float(p)>=50]
#get these rows
rows = wks.get_values_batch([(str(x), None) for x in indices])

【讨论】:

  • 我收到此错误:AttributeError: 'Worksheet' object has no attribute 'get_values_batch' | wks 定义为 wks = gc.open_by_url('theurl.com').worksheet(Feuille) 。|但我认为错误所指的不是那个。错误在于我的理解是指 API 库的工作表概念,而不是我创建的变量。也许 get_values_batch 不存在?
  • 顺便说一句,我所说的订阅是什么电话、互联网计划;电视。这是一个计划比较器,例如:whistleout.com
  • 它是一个新功能,请安装暂存版本。 pip install --upgrade github.com/nithinmurali/pygsheets/archive/staging.zip
  • 我下载了您链接的文件。然后我将文件导出到同一目录中。我还放置了函数导入工作表(get_values_batch 所在的位置)。我犯了同样的错误。这是我的代码:docs.google.com/document/d/…(这是一个谷歌文档)
  • 哦,你正在混合 gspread 和 pygsheets。我的回答只是关于 pygsheets,因为您标记了 pygsheets。请仅使用一个库。
猜你喜欢
  • 1970-01-01
  • 2013-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多