习题十一~习题十四

这本书上教的用户输入方法有三种,下面一一详细介绍:

raw_input( ):

这个是最常用的,它可以接收用户输入的任意字符,并将其转化为字符串,注意raw_input只用于用户输入,因此只有程序运行时在终端输入的字符才会被传入到这个函数中,程序员在脚本中括号内输入的字符会被用来作为用户输入的提示,且此字符必须
必须加引号:

raw_input("your name:")

运行结果:

084041_pXIj_2519674.png

程序运行到此处时会暂停,光标闪烁等待用户输入,用户输入后 按回车键即可继续运行程序:

084308_HS7G_2519674.png

用户输入后的字符串可以赋值给一个变量,使其在脚本中使用:

name = raw_input("your name:")
print "I'm %s." % name

运行结果:

084741_Ixt0_2519674.png

input( ):

与raw_input不同的是,input会把用户输入的东西当作python代码进行处理,使用它会有安全问题,要尽量避免使用。

input("your name:")

运行结果:

085853_u3OU_2519674.png

输入的字符和上次一样,怎么出错了呢?因为input把“leo"当作代码中的一部分来处理了。在python中,非字符串,整型和浮点型的字符必须提前被定义,如被定义成类名,函数名或变量,否则不会被承认,此例中,因为没有被定义导致python在处理"leo"时,会发出疑问:怎么回事,我不认识它,它是谁?所以出错了。

接下来看几个正确的例子:

leo = "leo"
name = input("your name:")
print "I'm %s." % name

091129_CYEy_2519674.png

name = input("your name:")
print "I'm %s." % name

091247_lp5K_2519674.png

两例中"leo"均被定义为字符串。

from sys import argv:

首先来解释一下书上的例子:

from sys import argv
script, first, second, third = argv
print "The script is called:", script
print "Your first variable is:", first
print "Your second variable is:", second
print "Your third variable is:", third

第一句,将sys模块引入脚本,在Python中,每个Python文件都可以作为一个模块,模块的名字就是文件的名字,argv是这个文件中的一个方法,或许是一个类,一个函数,这里argv是一个传递给脚本的命令行参数列表(The list of command line arguments passed to a Python script),第一句的意思即“从sys这个文件中把argv导入到这里来,我要调用它。”

第二句,将argv中的命令行参数解包。在每次运行py文件时,都要输入python name.py,其中python告诉终端运行的是python文件,而name.py就是一个命令行参数。这一句中相当于将argv中的一系列命令行参数解放出来,分别赋值给你给定好的变量,变量的名字是可以随便取的,就和一个妈妈生下四个孩子,你给他们四个分别取了名字是一样的。

剩下的不用我说大家也清楚,就是四个变量的运用。

需要特别注意的是,四个参数名在终端紧跟在“python”之后输入,由于第一个必须是你要运行的文件名,因此第一个变量永远代表了文件名,命令行参数都是字符串类型。如下:

101142_PMPK_2519674.png

因此运行结果即:

101237_0IcS_2519674.png

转载于:https://my.oschina.net/u/2519674/blog/610722

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值