Python中文
首页
教程
问答
标签
搜索
登录
注册
Python:从arg解析器到字典
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我在Python3.8中有一个名为“stores.py”的文件。这个文件有一个名为“scan_transactions”的方法,它接受两个位置参数:“store”和“checkpoint”。该方法基本上通过使用正则表达式模式扫描PostgreSQL表中的存储事务。当代码到达事务表中该特定存储的最后一个事务id时,将使用并更新另一个表(检查点表),以指示任何给定存储的最新最大事务id</p> <p>目前,我正在从一个预定义的字典(类似于下面的字典)传递这两个参数:</p> <pre><code>dict_stores = {'store1': 'checkpoint_store1', 'store2': 'checkpoint_store2','store3': 'checkpoint_store3'} </code></pre> <p>当前代码如下所示:</p> <pre><code>def store_transactions(store: str, checkpoint_name: str) . . . . . if __name__ == '__main__': for store, checkpoint in shops.dict_stores.items(): LOG.debug(f'Processing store : {store}, checkpoint: {checkpoint}') store_transactions(store, checkpoint) </code></pre> <p>我现在希望使其更具动态性,并允许用户在执行之前将要处理事务的存储作为批处理作业传递。这将使用下面的命令行:</p> <pre><code>"stores.py" --stores -store1 -store2 -store3...etc. </code></pre> <p>然后,上面的命令将替换这个预先固定的字典并动态创建一个字典。有人知道我如何使用“arg parser”以编程方式将参数“-shop1”、““-shop2”转换为类似于上面的字典(它们各自的检查点作为值),并使用当前运行的相同循环处理所有存储吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>替代解决方案:只需读取一个JSON配置文件,可能将参数设置为<code>stdin</code>的文件名或触发器</p> <pre class="lang-py prettyprint-override"><code>import json ... with open(path_config) as fh: config = json.load(fh) # config is now a Python dict </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
4 回答
如何在乒乓球游戏中阻止球
5 回答
如何在乘法和模中不乘空间?
4 回答
如何在乘法和除以2个不同的数字之间进行交换?
9 回答
如何在也是数据一部分的单个字符上拆分大字符串
5 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
6 回答
如何在事件wxWidgets中传递自定义数据
6 回答
如何在事件中使用lambda i=i?
9 回答
如何在事件中心只接收最近的数据
5 回答
如何在事件发生之前保持云函数运行?
10 回答
如何在事件发生后使页面重定向到同一页面
1 回答
如何在事件回调之间保持python生成器的状态
3 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
6 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
6 回答
如何在事件处理程序中访问外部对象?
3 回答
如何在事件循环中将协程打包为正常函数?
5 回答
如何在事件循环之外运行协同程序?
5 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
10 回答
如何在事件文件中只保留一份摘要?
5 回答
如何在事件模板中添加事件
10 回答