input函数

目录

input用途

实现人机交互:

1、你提出问题打印在屏幕上,

2、运行程序的人再输入回答。

3、按下回车,程序得到收集来的回答

4、之后,逻辑向下继续运行。

我们写的程可以实现根据他输入的回答进行不同的逻辑走向。


语法

示例

result = input('你爱我吗?请输入:') 

if result == '不':

print('哼!你个大猪蹄子!')

else:

print('me too!!!'))

# 拿着搜集到的结果数据“result”的值来处理我们的程序,根据result的值不同,逻辑走向也就不同。

你提出的问题就是小括号“()”里边的那段字符串。result接受的就是运行的人输入的回答。运行的人按下回车,流程向下继续走。

参数

是一句话,只要填写你要询问客户的问题或你想输入、表达出来的任何数据,都行。且任何数据类型的皆可。

比如下边几个不同参数的示例:

a、字符串类型的参数

result = input('你爱我吗?请输入:')
# 运行时会打印:你爱我吗?请输入:

b、数字类型 参数

result = input(520)
# 运行时会打印:520

c、布尔类型 参数

result = input(True)
# 运行时会打印:True

d、甚至复杂类型(日后要整理的列表)参数都可以!

result = input([1,2,3])
# 运行时会打印:[1,2,3]

返回值

1、正常情况下

返回的就是用户输入的内容。

BUT⚠️, input函数的返回值,一定是字符串格式的。

也就意味着result变量肯定是字符串类型的数据。

result = input('你爱我吗?请输入:')
print(type(result)) # <class 'str'>

控制台交流如下:

“你爱我吗?请输入:”

此时我输入了123,还是纯数字键盘输入的123喔。

然后观察print的result类型,发现是<class 'str'>,字符串格式。

2、非正常情况下

那么,我用户不回答,直接回车跳过你这个问题呢?返回值是啥?看图说话:


任性的用户的操作

可以看到图中最后一行打印的依旧是<class 'str'>,字符串格式。说明用户不输入,result接收的、或者说input返回的值是一个字符串形式的空串。

至于函数相关内容。我学过js接受起来很方便。可能零基础看起来就不爽了。

什么是参数、什么是返回值。。。心里一千个草泥马沸腾。

这个也按下不表,日后详谈。

但是说回正题。我们平时写逻辑,得把用户输入的可能性都考虑进去。也就是result如果不符合我们期望的情况,都考虑进去。

比如我上例中,result只要不是“不”字,就都走到else的情况了。


返回值数据类型转换

上边强调了好几遍,input函数赋值给变量后,变量肯定是字符串格式。

马上要过年了,过年肯定要见你的七大姑八大姨吧!

那么假如我们对input有以下使用场景呢:


age = input('石头,你今年多大啦!')
if age > 24:
marryBu = input('哎呀!那你有对象了吗?打算啥时候结婚啊!')
elif age < 24:
whereWork = input('工作啦!那你年薪多少啊现在!')
else:
print('哎吆,24不小了!我儿子24岁那年,他儿子都出生啦!')
print('允许这里有个白眼!

【python系统学习05】input函数——实现人机交互的更多相关文章

  1. 【python系统学习12】函数

    函数 函数是一堆组织好的.可重复利用的.用来实现某一功能的代码. python中的input().print().type().bool().len()等都是函数.且是python的内置函数. 我们也 ...

  2. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  3. Python新手学习基础之函数-概念与定义

    什么是函数? 函数是可以实现一些特定功能的方法或是程序,简单的理解下函数的概念,就是你编写了一些语句,为了方便使用,把这些语句组合在一起,给它起一个名字,即函数名.使用的时候只要调用这个名字,就可以实 ...

  4. 【Python系统学习】基础篇

    这次真的是最后一次了!第三次滚Python的基础.走了太多弯路.认真一点!菜鸟! 教程 转义字符 \ 可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\ ...

  5. 【python系统学习10】布尔值

    python的数据类型有好多个,前边写过字符串.整数和浮点数这三种. 本节来整理另一种简单数据类型--布尔值 布尔值(bool) 布尔值和其数据值 计算机可以用数据进行判断,若判断为真则执行特定条件中 ...

  6. python基础学习1-内置函数

    #!/usr/bin/env python # -*- coding:utf-8 -*- 系统内置函数 n =abs(-1) #绝对值 print(n) #bytes()函数 s="离开&q ...

  7. Python 系统学习梳理_【All】

    Python学习 1. Python学习---Python安装与基础1205 2. Python学习---PyCharm的使用学习 3. Python学习---Python数据类型1206 4. Py ...

  8. Python Tutorial 学习(七)--Input and Output

    7. Input and Output Python里面有多种方式展示程序的输出.或是用便于人阅读的方式打印出来,或是存储到文件中以便将来使用.... 本章将对这些方法予以讨论. 两种将其他类型的值转 ...

  9. Python新手学习基础之函数-lambda函数

    lambda函数 在Python里除了用def定义函数外,还有一种匿名函数,也就是标题所示的lambda函数,它是指一类无需定义标识符(函数名)的函数或子程序. lambda函数的使用语法如下: la ...

随机推荐

  1. python编程设计模式之接口类和抽象类

    接口类 """ 接口类 是一种编程设计模式,在python原本没有接口类 借用Java思想创建的一种规范设计模式 支持多继承,进行多方面规范 ""&q ...

  2. P1058 车厢重组

    题目描述 在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转.一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转 \(180\) 度,则可以把相邻两节车厢的位置交换,用这种方法可 ...

  3. linux加载和卸载模块

    模块建立之后, 下一步是加载到内核. 如我们已指出的, insmod 为你完成这个工作. 这个 程序加载模块的代码段和数据段到内核, 接着, 执行一个类似 ld 的函数, 它连接模块中 任何未解决的符 ...

  4. 【js】vue 2.5.1 源码学习(二) 策略合并

     一.  整体思路     1 首先是代码的大体构造,先判断引入代码的环境,即对应amd 和cmd的处理     2 vue_init 需要借助 initMinxin    ==>>> ...

  5. 基于AutoIt3的Ping、网址转IP地址,以及hosts文件写入

    #include <Constants.au3> #include <GUIConstantsEx.au3> GUICreate("通讯测试-eip.hxgroup. ...

  6. linux 使用 ioctl 参数

    在看 scull 驱动的 ioctl 代码之前, 我们需要涉及的另一点是如何使用这个额外的参数. 如果它是一个整数, 就容易: 它可以直接使用. 如果它是一个指针, 但是, 必须小心些. 当用一个指针 ...

  7. 【30.43%】【codeforces 746C】Tram

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  8. JS事件委托(代理)学习笔记

    在开始之前我们先来熟悉一下HTML DOM addEventListener()方法,该方法用于向指定元素添加事件句柄.语法说明如下图所示: 主要想强调一下第三个参数useCapture,默认值为fa ...

  9. navicat for mysql连接本地数据库

    navicat for mysql连接本地数据库 打算使用navicat连接本地数据库,连接的时候,一直连接不上.然后猜想是不是本地数据库没有设置好.输入mysql,出错内容:access denie ...

  10. UTF-8、UTF-16、UTF-32编码的相互转换(不使用现成的函数)

    最近在考虑写一个可以跨平台的通用字符串类,首先需要搞定的就是编码转换问题. vs默认保存代码文件,使用的是本地code(中文即GBK,日文即Shift-JIS),也可以使用带BOM的UTF-8.gcc ...