一、input() 函数
二、input() 函数的数据类型
三、input() 函数结果数据类型的强制转换
四、input() 函数判断输入内容的数据类型
一、input() 函数
input() 函数是输入函数,当你在函数的括号内写出问题时,
input() 函数会将此问题原样显示在屏幕上,并在终端区域等待你针对此问题的回答。
注意:设置变量后,哪怕是括号内原本带有字符串内容,变量值依旧指终端手动输入部分,不包括原本的已有的内容。
# 对 input() 函数的结果进行赋值,然后使用 input() 函数搜集信息,最后再用 print() 函数输出结果
# ****************** 实战示例 ****************** #
import time
# 请将代码串 input('请在以下四个选项【格兰芬多;斯莱特林;拉文克劳;赫奇帕奇】中,输入你想去的学院名字:')写在下面代码框中;
# 方法一:在问题冒号后输入答案
print('请在以下四个选项选择:n【格兰芬多;斯莱特林;拉文克劳;赫奇帕奇】')
(1)
print('请在冒号后输入你想去的学院名字,并回车确认~')
(1)
name1 = input('请输入你想去的学院名字:')
# 方法一:在问题下一行输入答案
print('n请在以下四个选项选择:n【格兰芬多;斯莱特林;拉文克劳;赫奇帕奇】')
(1)
print('请在问题下1行输入你想去的学院名字,回车确认~')
(1)
print('请输入你想去的学院名字:')
name2 = input()
# 可以查看变量 name1 和 name2 的值
print('n'+name1+'学院欢迎你,小萌新!')
print('n'+name2+'学院欢迎你,小萌新!')
二、input() 函数的数据类型
input() 函数输入值永远是字符串类型:
对于 input() 函数来说,不管我们输入的内容是什么类型,即不管输入的是整数(int) 1234 ,还是浮点数(float) ,还是字符串(str);
input() 函数的输入值(搜集到的回答),永远会被【强制性】地转换为【字符串】类型(str)。(Python3 固定规则)
# 由于我们用赋值运算符【=】把 input() 函数的字符串结果,赋给了变量,所以这个变量也一定是字符串类型
三、input() 函数结果数据类型的强制转换
int() 函数:是强制类型转换,可以将字符串强制性地转换为整数
# 变量 = int(input())
float() 函数:是强制类型转换,可以将字符串强制性地转换为浮点数
# 变量 = float(input())
'''
详细用法可查看我的另一博文:
'''
# ************** 示例 **************** #
choice = int(input('请输入您的选择:'))
# 将输入值强制转换为整数,并赋值给变量 choice
''' 一定要输入整数,不能输入浮点数和字符串 '''
choice = fioat(input('请输入您的选择:'))
# 将输入值强制转换为浮点数数,并赋值给变量 choice
''' 可以输入整数和浮点数,不能字符串 '''
四、input() 函数判断输入内容的数据类型
# ***************************** 前言 ******************************** #
'''
input() 函数:固定是 str 字符串类型。
但是,我们可以输入 “整数型、浮点型、字符串类型的” 内容,那么,是否可以判断输入的是什么类型的内容呢?
答案是可以的,而且很常见,判断输入的是否为数字,然后将输入的数字进行运算引用;输入字符串则判断输入格式错误。
'''
# ***************************** 代码 ******************************** #
answer = input()
if answer.replace('.','').isdigit():
# 判断输入的内容的数据类型是:整数(int)
if answer.count('.') == 0:
print('输入的 “'+answer+'” 的数据格式是:整数(int)')
# 判断输入的内容的数据类型是:浮点数(float)
elif answer.count('.') == 1:
print('输入的 “'+answer+'” 的数据格式是:浮点数(float)')
# 判断输入的内容的数据类型是:字符串(str)
else:
print('输入的 “'+answer+'” 的数据格式是:字符串(str)')
# ***************************** 实战示例 ******************************** #
answer = input()
if answer.replace('.','').isdigit():
# 判断输入的内容的数据格式是:整数(int)或浮点数(float)
if answer.count('.') == 0 or 1:
print('好的,我知道了,您需要兑换 '+answer+' 金加隆')
# 只有整数或浮点数才可以用 float() 函数强制转换为浮点数类型,然后运用于运算方式
print('那么,您需要付给我 '+str(float(answer)*)+' 人民币')
# 判断输入的内容的数据格式是:字符串(str)
else:
print('对不起,您输入的内容无法识别~n请重新运行程序!')
# ***************************** 题目说明 ******************************** #
请你综合四天所学知识,将下面的对话,用代码表现出来。
小精灵:您好,欢迎来到古灵阁,请问您需要帮助吗?需要or不需要?
你:需要
小精灵:请问您需要什么帮助呢?1 存取款;2 货币兑换;3 咨询
你:2
小精灵:金加隆和人民币的兑换率为1:,即一金加隆=人民币
小精灵:请问您需要兑换多少金加隆呢?
(你说了一个数字N)
小精灵:好的,我知道了,您需要兑换(你说的数字N)金加隆。
小精灵:那么,您需要付给我(你说的数字N*)人民币。
注1:如果选择不需要帮助,小精灵会礼貌地说'好的,再见。'
注2: 如果选择帮助【1 存取款】,小精灵会推荐你去存取款窗口;如果选择帮助【3 咨询】,小精灵会推荐你去咨询窗口。
# ***************************** 实战代码 ******************************** #
import time
name1 = '小精灵:'
name2 = '你:'
print(name1+'您好,欢迎来到古灵阁,请问您需要帮助吗?n【需要】 or 【不需要】?')
(1)
answer1 = input(name2)
if answer1 == '需要':
(1)
print(name1+'请问您需要什么帮助呢?请选择以下任一编号回答:n【1】存取款;【2】货币兑换;【3】咨询')
(2)
answer2 = input(name2)
if answer2 == '1':
(1)
print(name1+'请您到存取款窗口等待,将由银行人员为你解答!')
elif answer2 == '2':
(1)
print(name1+'金加隆和人民币的兑换率为 1: ,即 1 金加隆 = 人民币')
(2)
print(name1+'请问您需要兑换多少金加隆呢?请输入数字~')
(1)
answer3 = input(name2)
if answer3.replace('.','').isdigit():
if answer3.count('.') == 0 or 1:
(1)
print(name1+'好的,我知道了,您需要兑换 '+answer3+' 金加隆')
(2)
print(name1+'那么,您需要付给我 '+str(float(answer3)*)+' 人民币')
else:
(1)
print(name1+'对不起,您输入的内容无法识别~n请重新运行程序!')
elif answer2 == '3':
(1)
print(name1+'请您到咨询窗口等待,将由银行人员为你解答!')
else:
(1)
print(name1+'对不起,您输入的内容无法识别~n请重新运行程序!')
elif answer1 == '不需要':
(1)
print(name1+'好的,再见~')
else:
(1)
print(name1+'对不起,您输入的内容无法识别~n请重新运行程序!')
(2)
print('')