我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python中input()函数的用法实例小结

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python中input()函数的用法实例小结

一:input()函数的输入机制

我们编写的大部分程序,都需要读取输入并对其进行处理,而基本的输入操作是从键盘键入数据。Python从键盘键入数据,大多使用其内置的input()函数。但是,不同于程序设计初学者常接触的C和C++,我们不需要在输入之时规定变量的类型。相反,我们可以非常便捷的使用a = input()对任何数据类型的变量a进行赋值,无论是int,float还是列表等等。但是这并不代表Python将程序员的判断数据类型工作完全省去了,如果这样想,那么在编程过程中很容易出现问题。我们知道,在对变量进行赋值时,Python会帮助判断存储数据的类型,不需要我们进行操作,但是input不是这样。

首先,我们需要弄明白我们赋值的变量在python内部到底是以什么形式存在的。下面我将展示一个程序片段

那么我们可以看到,通过type()函数,我们看到无论我们输入的值是int,float还是sring,最后input()函数返回的这个数据的类型均为string型。了解了这一点,将有利于我们更好的使用input()函数。因为在算术运算中,字符串是没法直接和int或float数据进行算术运算的,如果直接使用,那么必然带来TypeError报错。

即使不报错,我们使用两个直接input()函数键入的数据进行计算,那么很可能是在对两个字符串进行组合而不是算术运算

二:input()函数常涉及的强制类型转换

所以,当我们使用input()函数输入的数据进行算术运算时,我们大多需要使用强制类型转换来允许我们计算。得益于Python便捷的数据类型转换,我们可以十分方便的转换数据类型。

第一种是在键入时进行转换,例如:a = int(input())。这样赋值的数据存储的形式从一开始就是我们转换的数据类型,与C语言,C++等无异。

第二种则是在使用时进行转换。这样赋值的数据存储的形式仍是input()返回的字符串类型,仅仅在使用时转换,会加大工作量,且有可能因为粗心带来报错,所以要谨慎使用。

三:带提示的input()函数及其常见问题

在初见input()时,我发现了 variable = input(prompt)这个输入格式,一下子惊如天人。觉得Python的input()函数的用户交互真是友善,从此不再需要再像其他一些编程语言一样单独写一个用户提示语。以下面一个片段为例

可以看到,当我们敲击Enter以后,屏幕上会显示我们编写的提示性语言,并等待用户输入。这样给交互性程序编写带来了便利。

但是,我很快在使用variable = input(prompt)这个形式时遇到了问题,当我理所当然的把input(prompt)中的prompt当作print()函数使用时,我发现input()并不能将变量赋值返回给程序。也就是说,如果我们在input()的提示性语言中加入了变量,就很可能出错,例如:

这个问题的原因是variable = input(prompt)是直接以字符串形式输出提示性的prompt语言,不能像print()函数一样将值赋给变量并输出。那么这是不是意味着我们不能将变量加入其中呢?毕竟在很多循环中,提示性的语言是需要根据循环次数改变的。

那么实际上我们是可以加入的,解决方法就是上面讲过的强制类型转换,正因为我们已经知道input()以字符串形式输出,所以需要我们将变量转化成string型!但是,需要注意的是,使用的符号是用于字符串连接的“+”而不是分割字符串和变量的“,”——这里需要注意。

四:利用input()一次性输入多个变量值

我们在编程的时候,常常需要一次性给多个变量赋值。在C语言和C++中,我们使用scanf("%d %d", &a,&b)这样的方式进行输入,其数据以空格为分界。那么在python中我们该如何一次性输入多个值呢?

(1):利用split()函数进行输入,同时,我们不仅可以利用split()函数一次性输入多个数,我们还可以设置分隔符,除了传统的空格形式,也可以用逗号“,”这种更符合语言习惯的方式分隔输入字符。其原理是因为input()输入了一个字符串,而split()函数能根据设定的分割点分割字符串并返回分割后的字符串列表,所以能实现一次性输入多个数据值。范例如下:

但是,这样输入的值仍是字符串型,我们在上面已经说过字符串无法直接参与运算,最好输入时进行类型转换,那么,按照我们第二点的方法转换多输入值可行吗?

可以看到,这样是不可以的,那么为什么上面单输入可以而多输入报错呢?原因我们其实已经说过了,split()函数返回的是一个列表,spring当然能被转换成int型,但是列表是没法被这样直接转换的,所以我们需要用另一个函数map()来实现多输入的强制类型转换。

map()函数接受两个接收两个参数,一个是函数,一个是序列,map()将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。我们将传入的函数设置为强制类型转换函数int,则split()函数返回的列表里的每一个值都将被强制转换类型,从而实现多输入的类型转换。范例如下:

附:input()函数结果的强制转换

choice=input('请选择1或2')
if choice=='1':
    print('正确')
else:
    print('错误')

上面这段代码很简单,仅有两个选项,如果上面代码不是两个,而是几十个,几百个,难道我们要一个一个打'1','2','3','4','5',.....'200','201'.....,这时我们要想办法简单一点,那就是把所有的数据的类型都转换成整型,但是上面不是说了input()函数的返回都为string类型吗?其实在某些特殊情况下是可以被强制转换的,

choice=int(input('请选择1或2'))
if choice==1:
    print('正确')
else:
    print('错误')
 
------------------------------
 
请选择1或2 1
正确

只要在input()函数前面加上int(),就可以把input()函数的结果强制转换成整数。

那么我们什么时候会用到把结果强制转换成整数的时候呢,当我们想要的结果是数字的时候。例如年龄,工资,身高,体重等这些数字时。

例如:我们要对全班的同学按照身高进行分组,这时我们就需要用到整数。

height=int(input('请问你的身高是:'))
if 0<height<=150:
    print('你被分到了1组')
elif 150<height<=180:
    print('你被分到了2组')
else:
    print('你被分到了3组)
-----------------------------------
请问你的身高是:185   
你被分到了3组

总结

到此这篇关于Python中input()函数用法的文章就介绍到这了,更多相关Python input()函数用法内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python中input()函数的用法实例小结

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python reduce()函数的用法小结

reduce()函数也是Python内置的一个高阶函数。 reduce() 格式: reduce (func, seq[, init()]) reduce()函数即为化简函数,它的执行过程为:每一次迭代,都将上一次的迭代结果(注:第一次为i
2022-06-04

python偏函数的实例用法总结

说明 1、当函数的参数太多,需要简化时,使用functools.partial可以创建一个新的函数。 2、这个新的函数可以固定原始函数的部分参数,从而更容易调用。 作用是固定一个函数的某些参数(即设置默认值),返回一个新函数,调用这个新函数
2022-06-02

Python中plt.scatter()函数的常见用法小结

这篇文章主要介绍了Python中plt.scatter()函数的常见用法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-05-15

Python函数中的函数(闭包)用法实例

本文实例讲述了Python闭包的用法。分享给大家供大家参考,具体如下: Python函数中也可以定义函数,也就是闭包。跟js中的闭包概念其实差不多,举个Python中闭包的例子。def make_adder(addend):def adde
2022-06-04

python中os.path.join()函数实例用法

1、说明 拼接文件路径,可以有多个参数。 2、语法os.path.join(path1,path2,*)path1 初始路径。 path2 需要拼接在其后的路径。初始路径文件夹下的文件或文件夹。可以有多个需要拼接的参数,依次拼接。 3、注意
2022-06-02

浅述python中argsort()函数的实例用法

由于想使用python用训练好的caffemodel来对很多图片进行批处理分类,学习过程中,碰到了argsort函数,因此去查了相关文献,也自己在python环境下进行了测试,大概了解了其相关的用处,为了怕自己后面又忘了,就写下来权当加深理
2022-06-04

python中input函数的作用是什么

Python中的input函数用于从用户处获取输入。它将等待用户输入一些内容,并将输入的内容作为字符串返回。可以通过在input函数中提供一个提示信息来引导用户输入。一旦用户输入了内容并按下Enter键,input函数将返回输入的字符串。
2023-10-18

Linux里awk中split函数的用法小结

The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep. set time = 12:34:56set hr
2022-06-04

python 中input函数的作用是什么

本篇文章给大家分享的是有关python 中input函数的作用是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python有哪些常用库python常用的库:1.reques
2023-06-14

C语言中getchar()函数的用法小结

这篇文章主要介绍了C语言中getchar()函数的用法,getchar是输入函数,输入的过程是什么呢,本文给大家详细讲解,对C语言getchar()函数相关知识感兴趣的朋友一起看看吧
2022-11-13

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录