Python中,raw_input()函数的输入,能否作为argv的参数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中,raw_input()函数的输入,能否作为argv的参数?相关的知识,希望对你有一定的参考价值。

如题,raw_input()可以从标准输入中读值,那么,raw_input()获取的值,能否作为参数传递给argv哪?

如果可以,代码怎么写?

谢谢!

参考技术A

你问的问题不是非常清楚。

我只能假设你要的是这样的效果。

try:
    number = int( raw_input("please enter a number: "))
except ValueError:
    print "Invalid number !"

追问

你好,这段代码没有用到argv模块。

其实,我想知道的就是,raw_input()和argv可不可以同时用。

raw_input()从标准输入中获取值,能否作为参数传递给argv

追答

我终于明白你的问题了。
raw_input()和argv完全没有关系。它们是两种独立的方式实现从用户接收输入的数据。

(1) argv方式是在命令行方式调用python脚本时候用的。argv不是模块,只是sys模块的一个属性,是个list对象。
比如举例来说:
python abc.py 1 2
在abc.py里面包括下面的语句.
import sys
print sys.argv[0] # 结果abc.py 其中sys.argv[0] 是脚本的文件名字
print sys.argv[1], sys.arg[2] # 结果就是, 1 2
从命令行可以接受n个参数, 只要用空格分开就行了.

(2) raw_input()是直接从键盘接受用户的输入数据结果放入变量
例如:
input_text = raw_input("please input a word:")
print input_text.

这两种方式可以同时在一个脚本里面使用,完全独立的。

本回答被提问者和网友采纳
参考技术B

Q: I can’t combine argv with raw_input().
A: Don’t over think it. Just slap two lines at the end of this script that uses raw_input() to get something and then print it. From that, start playing with more ways to use both in the same script.        

-----From Learn Python the Hard Way, 3rd Edition

【答案翻译~转】别想太多了。在脚本结尾加两行 raw_input() 随便读取点用户输入就行了,然后再慢慢在脚本中玩玩这两个东东。

raw_input与input

python2.7版本中等待用户输入内容的函数是raw_input

1 a = raw_input(">>>")
2 print a

“>>>”为提示信息,我随便写了一个,运行并输入hello world

输出结果:

>>>hello world
hello world

 

python3.5版本中等待用户输入内容的函数是input,3.5版本中移除了raw_input这个函数

a = input(">>>")
print a

操作过程与2.7版本无异

PS:输入时的提示信息也可以使用变量来代替,例如:

1 prompt = ">>>"
2 a = raw_input(prompt)
3 print a

以上是关于Python中,raw_input()函数的输入,能否作为argv的参数?的主要内容,如果未能解决你的问题,请参考以下文章

Python中,raw_input()函数的输入,能否作为argv的参数?

Python 内置函数raw_input()和input()用法和区别

python 字符串输入输出函数print input raw_input

Python输入/输出

python输入输出的格式化,用户输入函数,强制类型转化

raw_input与input