码迷,mamicode.com
首页 > 编程语言 > 详细

4.python中的用户交互

时间:2016-05-25 01:45:37      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

  学习完如何写‘hello world‘之后,我们还是不太满意,因为这样代码就写死了,以后运行的时候都只打印一局固定的话而已。

  但是,我想在程序运行后,自己手动输入内容怎么办,此时就要学习如何使用用户交互了。

  在python2.x中,用户交互使用的是 raw_input("提示内容") 方法,例如

name = raw_input("请输入姓名:")
print name

  之前的起手式就略去了,代码的执行结果是:

技术分享

  再输入东西后回车

技术分享

    这里有一个要注意的地方,那就是当程序运行到等待用户输入的地方时,会一直等着,也就是下面的代码不会继续执行了,连退出都要用ctrl+c强制退出。

    另外,这里输入的数据会将其转换成字符串类型,要注意有时函数传参中的类型错误,别问我是怎么知道的。


 

  在第一遍中曾经提供,在3.x中, raw_input() 已经被 input() 取代了,而input()的特性又有所不同:

name = input("请输入姓名:")
print type(name)
print name  

 

  其中,type()函数是用来查看数据类型的,这种可以直接用的,被称为内置函数或内建方法。

技术分享

  当我们和上面输入的一样时,却发现报错了,关于报错提示怎么看以后会进行总结,这里报错的意思是变量没有被定义。

  如果我换一种输入方式的话:

技术分享

  当我用引号引起来的时候,发现又可以了。这里可以得出input()的特性为:输入的数据是什么类型,就是什么类型。这个和raw_input()很不同,要注意一下。


 

  看到第一次输入后而报错的时候,有些人会问,如何我这里输入的是已经定义(也就是已经赋值)的变量名, 是不是就能够调用到在内存中的值了?

  在2.7(因为我只用过2.7,其他2.x不清楚)中,确实是可以这样的,但是在3.x中不行,因为这个功能被另一个内置函数 eval("name") 代替了("name"是传入字符串,然后用传入的字符串作为变量名)。

  当然input()的用户交互的功能还是有的,只是不能去调用变量了而已。


 

  以上,就是用户交互的基本内容了,还有什么东西遗漏的话,我会继续补充。

 

4.python中的用户交互

标签:

原文地址:http://www.cnblogs.com/scolia/p/5525567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!