本文首发于公众号「猿天罡」,转载请注明出处,谢谢!

有时候,我们编写的程序需要从用户那儿“拿到”一些数据才能继续执行下去,比如,判断某人是否到了法定投票年龄,需要用户自己输入名字和年龄才行。

Python要“拿到”用户输入的数据比起Java来可简单多了,只需要学会input()方法即可。

下面我们一起来学习一下input()函数的基本用法,迈出编写交互式程序的第一步!

1.函数input()的工作原理

input()方法会先向控制台输出提示语(如果你设置了的话,后面会讲),然后暂停程序,等待用户输入一些文本数据。获取到用户输入的数据后,Python将其存储在一个变量中,以便之后使用。

举个例子,下面的程序让用户输入年龄(暂时不判断是否可以投票),再将用户年龄打印出来:

age = input("小盆友,今年多大啦?请在下方输入你的年龄:\n")

print("我今年 " + age + " 岁")

复制代码

函数input()接受一个参数,即要向用户显示的提示或说明,让用户知道该如何做。

在上面的示例中,我们传给input()函数的参数是小盆友,今年多大啦?请在下方输入你的年龄:\n。程序会把这个参数输出到控制台,用户可以看到这个参数(提示)。

然后用户根据提示输入自己的年龄,输入完成后,当用户按下回车键,程序会继续执行,并将用户输入存储在变量age中,最后被我们打印输出。

说明一下,不同IDE的控制台可能有细微的区别,我用的是PyCharm,用户输入的内容是彩色的。如果你用的是别的IDE没有彩色可别大惊小怪哦。

别看上面程序短小,其实暗含很多信息:

如果需要给用户提示信息,就把提示信息(通常是字符串)传给input()方法。当然,你也可以什么也不传,程序照样正常执行,就是用户体验不太好;

不论用户输入的是什么,Python都会将其转化成str类型。

关于第二点,我们来具体看看:

age = input("小盆友,今年多大啦?请在下方输入你的年龄:\n")

print(type(age))

复制代码

我们把变量age的数据类型输出看看:

可以看到输入的"18"确实是str类型,这也就解释了为什么上面的代码中age可以不做转化直接与字符串进行拼接了。

2.投票程序

知道了input()函数的基本用法之后,其实我们已经能够实现投票程序了。不过在此之前还需要恶补一个小知识点。

我们知道input()函数获取到的用户输入理论上都是str类型(字符串)。

但是投票程序需要用数字去比较大小,要知道"18"和18是不一样的,前者是字符串,后者是数字,只有数字18才可以直接进行大于、小于或等于之类的比较。

问题:怎么把str类型转化成整数类型呢?

答:用函数int(),参数是要转化的字符串。

age = input("小盆友,今年多大啦?请在下方输入你的年龄:\n")

print(type(age))

# 把str类型转化成int类型

n = int(age)

print(type(n))

复制代码

我们把str类型的变量age转化成了int类型并将其赋值给变量n,所以type(n)输出的应该是int类型。

从图中可以看到,真的转化成功了。

**总结:**str类型转int类型,使用int()函数,被转化的字符串必须形式上是整数但类型是str。

现在万事俱备,一起来实现投票程序吧:

name = input("请输入你的姓名:")

age = input("请输入你的年龄:")

age = int(age)

if age >= 18:

print(name + ",你已达到法定投票年龄!")

else:

print(name + ",很遗憾,你暂时无法参与投票!")

复制代码

首先定义了两个变量name和age来接收用户输入的姓名和年龄。需要注意的是,这两个变量此时都是str类型。

然后需要把用户输入的年龄与法定投票年龄(18)进行比较,所以要求用户输入的年龄得是整数类型,所以使用了函数int()。关于函数的概念之后文章会讲到,如果你没有相关概念,就将其理解成一个黑箱,不必深究,只需要知道函数int()经过某些处理,可以把str类型转化成int类型就行了。

最后与18进行比较,大于等于18的可以投票,否则无法投票。

大于等于18岁的运行结果:

小于18岁的运行结果:

3.判断奇偶数

写这个呢,一方面是想巩固练习一下input()函数,另一方面是想讲讲前面几篇文章里没有提到却相当重要的一个运算符--%求模运算符。

小伙伴们可能对加(+)、减(-)、乘(*)、除(/)、乘方(**)很熟悉。遗忘的同学可以点击看我这篇文章。

求模运算符就是计算两个数相除的余数。

用求模运算符来计算图示算式:

23 % 5

复制代码

计算结果肯定是3。

言归正传,怎么判断某个数是奇数还是偶数呢?

我们知道,能被2整除的数是偶数,不能被2整除的数是奇数。整除的意思说白了就是余数为0,这恰好是求模运算符%擅长的领域。

假设存在某个整数X,如果:

X % 2 == 0 # X和2求模余数是0

复制代码

则说明X是偶数,否则X一定是奇数。

基本思路理解之后,动手编程咯:

number = input("请输入一个整数,程序将自动判断奇偶:")

number = int(number)

if number % 2 == 0:

print("\n数字" + str(number) + " 是偶数")

else:

print("\n数字" + str(number) + " 是奇数")

复制代码

首先定义变量number去接收用户输入的整数,心里要知道number接收到的是str类型,它无法直接和2执行求模运算。

然后将str类型变量number转化成int类型,这时number就可以和2执行求模运算了。

最后判断求模结果,即number与2相除的余数是不是0,等于0的话就是偶数,否则就是奇数。

运行结果:

求模运算符在编程中使用的还是蛮多的,和加减乘除等运算一样重要,如果你之前没有使用过的话,请务必牢记。

4.结语

本文重点讲述了input()函数的基本用法,顺便说明了str类型怎么转成int类型以及求模运算符的使用。

如果这篇文章对你有所帮助,欢迎点赞、转发加收藏啦~

或者你有任何疑问,可以扫码关注下方公众号,随时与我联系,关于Python相关的文章也会首发在此公众平台。

最后,感谢你的阅读,我们下期再见。

python输入变量_Python如何获取用户输入相关推荐

  1. python的输入函数是什么意思_在Python中,用于获取用户输入的函数是

    在Python中,用于获取用户输入的函数是 Whichofthefollowingmodernfarmtoolsaredevelopedbasedonpushsickle?A:Reaper.B:Gra ...

  2. 在python中用于获取用户输入的是-在Python中,用于获取用户输入的函数是

    在Python中,用于获取用户输入的函数是 Whichofthefollowingmodernfarmtoolsaredevelopedbasedonpushsickle?A:Reaper.B:Gra ...

  3. python中用于获取用户输入的函数是_在Python中,用于获取用户输入的函数是.

    在Python中,用于获取用户输入的函数是. 答:input() 关于新生儿生理性体重下降的恢复时间,下列正确的是出生后 答:7~10天 中国大学MOOC: 未来城市只有同时具备下列哪几个组成部分,才 ...

  4. [转载] 【基础教程】Python input()函数:获取用户输入的字符串

    参考链接: 从Python中控制台获取输入 input() 是 Python 的内置函数,用于从控制台读取用户输入的内容.input() 函数总是以字符串的形式来处理用户输入的内容,所以用户输入的内容 ...

  5. python语言怎么输入-Python input()函数:获取用户输入的字符串

    input() 是 Python 的内置函数,用于从控制台读取用户输入的内容.input() 函数总是以字符串的形式来处理用户输入的内容,所以用户输入的内容可以包含任何字符. input() 函数的用 ...

  6. python 字符串输入时间_Python input()函数:获取用户输入的字符串

    input() 函数用于向用户生成一条提示,然后获取用户输入的内容.由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串. 例如 ...

  7. python 获取用户的一个输入值_Python中,用于获取用户输入的命令为:

    [多选题]以下关于机器学习说法正确的是? [判断题]Python内置函数sum____用来返回数值型序列中所有元素之和. [单选题]关于自定义函数的下列说法不正确的是: [判断题]Python内置函数 ...

  8. python输入end退出循环_4.学习python获取用户输入和while循环及if判断语句

    0x00 Abstract 在开发中为了增加程序与用户的互动性需要增加获取用户输入的功能,在python中可以使用input()函数来获取用户的输入.当获取用户的各种输入后,我们需要使用逻辑语句来对数 ...

  9. python用于获取用户输入的函数是_在Python函数中,用于获取用户输入的是( )...

    在Python函数中,用于获取用户输入的是( ) 答:input() 中国大学MOOC:\"骨质疏松症的特征是是以骨量减少.骨的微观结构退化,致使发生的严重后果是\"; 答:\&q ...

最新文章

  1. 工程师必读 微软如何部署Exchange2010
  2. java中正则表达式要进行转义的字符。
  3. 怎么用python编简单游戏_用Python实现一个简单的算术游戏详解
  4. Bootstrap4 .ml-auto元素居右.mr-auto元素居左
  5. bootstrap 树形表格渲染慢_bootstrap table轻松实现数据表格
  6. Java BigDecimal stripTrailingZeros()方法与示例
  7. ms sql 触发器( 转)
  8. 前端学习(2618):vue插槽--默认插槽
  9. CCF201909-1 小明种苹果
  10. 计算机基础三级,三级数据库计算机基础知识
  11. 卷积神经网络 第一周作业 Convolution+model+-+Application+-+v1
  12. 极客大学产品经理训练营:产品规划与功能规划 第15课总结
  13. jsp编程:用Servlet实现用户登陆
  14. Mathematic的学习打卡day 8
  15. 超级整理术--读后笔记
  16. android摄氏度转为华氏温度
  17. 预设性能控制-Prescribed Performance Control(PPC)
  18. python随手记自动记账_菜鸟也疯狂!8分钟用Python做一个酷炫的家庭随手记
  19. IT项目管理之软件测试
  20. 网站被篡改怎么办?如何防护网站被黑

热门文章

  1. 国内外开源与 SaaS ,团队协作平台、项目管理工具整理
  2. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
  3. HTML-完美解决父子元素的外边距重叠和高度塌陷问题
  4. 《转》 ImportError: No module named caffe 的解决方案
  5. Linux下安装mysql(2) 及常见问题解决(CentOS)
  6. svn update 报错,必须先cleanup,然后cleanup失败解决方法
  7. SpringBoot------8080端口被占用抛出异常
  8. 前端跨域问题的几种解决方案
  9. AppStore IPv6-only审核被拒原因分析及解决方案-b
  10. 抽象工厂和工厂设计模式之间有什么区别?