python的内置函数其实挺多的,其中input和eval算得上比较特殊,input属于交互式内置函数,eval函数能直接执行字符串表达式并返回表达式的值.
一.input函数
input是Python的内置函数也是交互式函数,何为交互式函数?交互式程序是指程序可以接用户交互。
可能以前的代码,部分童鞋可能会觉得有些死板,变量声明和定义都已经提前准备好了,可能老司机会说你不运行程序我也知道输出的结果是什么。
input()函数能接收用户输入的内容,并返回字符串str类型,示例代码如下:
while True:
a = input("请输入:")
print("输入的内容是:{} 类型是:{}".format(a,type(a)))
大家现在都知道AI已经是大势所趋,未来的十年属于AI,那么今天我要告诉你价值一个亿的AI核心代码:(沙雕机器人1.0版本)
while True:
'''
replace("?","!") 将字符串中英文状态下的问号 ?替换为 感叹号 !
replace("?","!")将字符串中中文状态下的问号 ?替换为 感叹号 !
replace("吗","") 将字符串中的中文 "吗" 替换为 ""
'''
print(input("").replace("?","!").replace("?","!").replace("吗",""))
测试结果:
在吗?
在!
你好
你好
是python教程吗?
是python教程!
看完教程就能学会编程吗?
看完教程就能学会编程!
python能生孩子吗
python能生孩子
二.eval函数
在以前的文章中我们也曾经使用过eval,将字符串转为eval 。内置函数eval()除了这个功能还能直接执行字符串表达式,并返回表达式的结果,示例代码如下:
a = eval("3+2.5")
print("a={} ,a的类型是{}".format(a,type(a)))
a = eval("3+2")
print("a={} ,a的类型是{}".format(a,type(a)))
b = 33
a = eval("b/2")
print("a={} ,a的类型是{}".format(a,type(a)))
输出结果:
a=5.5 ,a的类型是<class 'float'>
a=5 ,a的类型是<class 'int'>
a=16.5 ,a的类型是<class 'float'>
三.input函数和eval函数配合使用
input函数和eval函数配合使用完成一个无界面的计算器:
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
@File:python_input_eval.py
@Time:2019/10/6 21:48
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
while True:
result = eval(input("请输入表达式:"))
print("结果:",result)
输出结果:
请输入表达式:3+2-6
结果: -1
请输入表达式:55*25
结果: 1375
请输入表达式:89/7
结果: 12.714285714285714
请输入表达式:
四.重点总结
1.注意input函数的返回值是字符串str类型,如果需要int或者list类型可以通过转换完成
2.eval是一个很强大的内置函数,除了以上功能,eval还能直接删除系统文件,这里不做过多讲解,注意eval不要滥用。
猜你喜欢:
转载请注明:猿说Python » python内置函数input/eval
技术交流、商务合作请直接联系博主
扫码或搜索:猿说python
猿说python
微信公众号 扫一扫关注
来源:oschina
链接:https://my.oschina.net/u/4410118/blog/3344808