相关疑难解决方法(0)

检查字符串是整数还是浮点数

所以我正在创建一个程序来显示数字系统,但是我在第一个障碍时遇到了问题.该程序将从用户那里获取一个数字,然后在整个程序中使用该数字,以便解释几个计算机科学概念.

在解释我的第一部分编号系统时,程序会说出它是什么类型的编号.我这样做是通过将字符串转换为浮点数来实现的.如果浮点数后面只有".0",那么它将它转换为整数.

目前我正在使用此代码

while CorrectNumber == False:
try:
    Number = float(NumberString) - 0
    print (Number)
except:
    print ("Error! Not a number!")
Run Code Online (Sandbox Code Playgroud)

这很有用,因为它显示用户是否输入了数字.但是,我不确定如何检查小数位后的值,以检查是否应将其转换为整数.有小费吗?

python number-systems python-3.x

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

Python optparse和参数中的空格

当使用optparse我希望在一个选项后得到整个字符串,但我只能将它的一部分放到第一个空格.

例如:

python myprog.py --executable python someOtherProg.py
Run Code Online (Sandbox Code Playgroud)

我在'可执行'中得到的只是'python'.

是否可以使用optparse解析这些行,或者您是否必须使用argparse来执行此操作?

€:我已经尝试将其封装在"s中.但是在深入研究代码之后,我发现子进程调用无法处理参数.

带有命令行的字符串被塞入列表'args'.

args = [self.getExecutable()] + self.getArgs().split()
Run Code Online (Sandbox Code Playgroud)

就像是

"[python D:\\\workspace\\\myprog\\\src\\\myprog.py]"
Run Code Online (Sandbox Code Playgroud)

这给了我系统找不到文件异常.我用的时候

args[0]
Run Code Online (Sandbox Code Playgroud)

有用.但我放弃了可执行文件的参数.

如果第一个地方没有获得字符串,则子进程模块会从列表中构建cmdline,因此我暂时无法解释该行为.

python optparse

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

标签 统计

python ×2

number-systems ×1

optparse ×1

python-3.x ×1