小编jgr*_*tty的帖子

在Python中,使用argparse,只允许正整数

标题几乎总结了我想要发生的事情.

这就是我所拥有的,虽然程序没有在非正整数上爆炸,但我希望用户被告知非正整数基本上是无意义的.

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-g", "--games", type=int, default=162,
                    help="The number of games to simulate")
args = parser.parse_args()
Run Code Online (Sandbox Code Playgroud)

并输出:

python simulate_many.py -g 20
Setting up...
Playing games...
....................
Run Code Online (Sandbox Code Playgroud)

输出带否定:

python simulate_many.py -g -2
Setting up...
Playing games...
Run Code Online (Sandbox Code Playgroud)

现在,显然我可以添加一个if来确定if args.games是否定的,但我很好奇是否有办法将它陷入argparse水平,以便利用自动使用打印.

理想情况下,它会打印类似于此的内容:

python simulate_many.py -g a
usage: simulate_many.py [-h] [-g GAMES] [-d] [-l LEAGUE]
simulate_many.py: error: argument -g/--games: invalid int value: 'a'
Run Code Online (Sandbox Code Playgroud)

像这样:

python simulate_many.py -g -2
usage: simulate_many.py [-h] [-g GAMES] [-d] [-l LEAGUE]
simulate_many.py: …
Run Code Online (Sandbox Code Playgroud)

python argparse

134
推荐指数
6
解决办法
5万
查看次数

iTunes连接不会让我自己添加为用户

我正在使用iTunes连接帐户在iTunes连接中为客户端创建应用程序.我想将自己添加为用户,以便我可以收到应用状态更新的电子邮件通知.当我尝试将自己添加为用户时,我收到以下消息:

您输入的电子邮件地址已属于iTunes Connect帐户.要继续,请输入其他电子邮件地址

我在我自己公司的iTunes连接帐户上使用此电子邮件地址,但不在我客户的帐户上.如何将自己添加为用户?

itunesconnect

84
推荐指数
2
解决办法
4万
查看次数

Cassandra和CouchDB有什么区别?

我正在看两个项目,我真的看不出差异

来自Cassandra网站:

Cassandra是一个高度可扩展,最终一致,分布式,结构化的键值存储...... Cassandra最终是一致的.与BigTable一样,Cassandra提供了比典型的键/值系统更丰富的基于ColumnFamily的数据模型.

来自CouchDB网站:

Apache CouchDB是一个分布式,容错且无架构的面向文档的数据库,可通过RESTful HTTP/JSON API访问.

也就是说,我看到每个项目之间的具体差异如下:访问方法,书面语言等等,但是当你谈到SOLRSphinx时,你知道两者都是差异很大的索引器,但最后是索引器.

我可以在这里说Cassandra和CouchDB是非关系数据库,在某些情况下可以替换另一个吗?

couchdb cassandra

75
推荐指数
2
解决办法
4万
查看次数

在Mac上更新Python

我想在mac上更新我的python 2.6.1到3.x但我想知道是否可以使用终端来做它或者我必须从python网站下载安装程序?

我问这个问题的原因是因为安装程序没有更新我的终端python版本.

python macos python-3.x

47
推荐指数
9
解决办法
11万
查看次数

什么是Java中的泛型?

我真的不明白泛型的意义.他们做了什么,你如何使用它们?

据我所知,他们所做的只是在编译时检查返回类型而不是运行时间,以避免在抛出错误之前运行程序.这就是他们所做的一切吗?

例如:

public <Integer> int test() {
    return 'c'; //will throw error at compile instead of runtime
}
Run Code Online (Sandbox Code Playgroud)

我正在读一些关于泛型是如何随意的,你应该只使用大写字母?这有点令人困惑.

java oop generics data-structures

34
推荐指数
3
解决办法
3万
查看次数

为什么python使用非常规的三引号来评论?

为什么python不使用C/C++/Java使用的传统风格的注释:

/**
 * Comment lines 
 * More comment lines
 */

// line comments
// line comments
//
Run Code Online (Sandbox Code Playgroud)

是否有特定原因或者它是否随意?

python comments coding-style

30
推荐指数
4
解决办法
5万
查看次数

Crashlytics:适用于二进制图像加载问题的iOS 9解决方法

我正在使用最新的崩解剂获取此警告,如何摆脱它们以及它们的含义是什么?

[Crashlytics] Version 3.3.1 (79)
[Crashlytics:Crash] Warning: iOS 9 workaround for binary image loading issue in place.
Run Code Online (Sandbox Code Playgroud)

cocoa-touch ios crashlytics

26
推荐指数
1
解决办法
3652
查看次数

如何检查文件是否已在ansible中下载

wget从ansible 下载文件.

  - name: Download Solr
    shell: chdir={{project_root}}/solr wget http://mirror.mel.bkb.net.au/pub/apache/lucene/solr/4.7.0/solr-4.7.0.zip
Run Code Online (Sandbox Code Playgroud)

但如果该位置不存在zip文件,我只想这样做.目前系统每次都下载它.

ansible ansible-playbook

25
推荐指数
5
解决办法
3万
查看次数

如何在Redis中设置/获取pandas.DataFrame?

将DataFrame设置为redis,然后将其恢复后,redis返回一个字符串,我无法找到将此str转换为DataFrame的方法.

我怎样才能做到这两个呢?

python redis dataframe pandas

19
推荐指数
4
解决办法
1万
查看次数

PyCharm类型暗示古怪

  • PyCharm版本4.5.4

  • 使用Python 3.4.3

出于某种原因,我在PyCharm中看到了这个警告,看起来很奇怪.

预期'collections.Iterable',取而代之的是'range [int]'

此检查检测函数调用表达式中的类型错误.由于动态调度和鸭子打字,这在有限但有用的情况下是可能的.函数参数的类型可以在文档字符串或Python 3函数注释中指定.

for _ in range(x):
Run Code Online (Sandbox Code Playgroud)

对我来说,这似乎是你可以写的最惯用的循环.

在此输入图像描述

python for-loop pycharm python-3.x

10
推荐指数
1
解决办法
5021
查看次数