python 内置函数input/eval(22)

python的内置函数其实挺多的,其中input和eval算得上比较特殊,input属于交互式内置函数,eval函数能直接执行字符串表达式并返回表达式的值.

 

一.input函数

input是Python的内置函数也是交互式函数,何为交互式函数?交互式程序是指程序可以接用户交互。

可能以前的代码,部分童鞋可能会觉得有些死板,变量声明和定义都已经提前准备好了,可能老司机会说你不运行程序我也知道输出的结果是什么。

six

input()函数能接收用户输入的内容,并返回字符串str类型,示例代码如下:

1

2

3

while True:

    a = input("请输入:")

    print("输入的内容是:{} 类型是:{}".format(a,type(a)))

input

 

大家现在都知道AI已经是大势所趋,未来的十年属于AI,那么今天我要告诉你价值一个亿的AI核心代码:(沙雕机器人1.0版本)

告诉你个小秘密

1

2

3

4

5

6

7

while True:

    '''

    replace("?","!") 将字符串中英文状态下的问号 ?替换为 感叹号 !

    replace("?","!")将字符串中中文状态下的问号 ?替换为 感叹号 !

    replace("吗","") 将字符串中的中文 "吗" 替换为 ""

    '''

    print(input("").replace("?","!").replace("?","!").replace("吗",""))

测试结果:

1

2

3

4

5

6

7

8

9

10

在吗?

!

你好

你好

python教程吗?

python教程!

看完教程就能学会编程吗?

看完教程就能学会编程!

python能生孩子吗

python能生孩子

 

二.eval函数

在以前的文章中我们也曾经使用过eval,将字符串转为eval 内置函数eval()除了这个功能还能直接执行字符串表达式,并返回表达式的结果,示例代码如下:

1

2

3

4

5

6

7

8

9

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)))

输出结果:

1

2

3

a=5.5 a的类型是<class 'float'>

a=5 a的类型是<class 'int'>

a=16.5 a的类型是<class 'float'>

 

三.input函数和eval函数配合使用

input函数和eval函数配合使用完成一个***面的计算器:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

# !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)

输出结果:

1

2

3

4

5

6

7

请输入表达式:3+2-6

结果: -1

请输入表达式:55*25

结果: 1375

请输入表达式:89/7

结果: 12.714285714285714

请输入表达式:

 

四.重点总结

1.注意input函数的返回值是字符串str类型,如果需要int或者list类型可以通过转换完成

2.eval是一个很强大的内置函数,除了以上功能,eval还能直接删除系统文件,这里不做过多讲解,注意eval不要滥用。

 

猜你喜欢:

1.python return逻辑表达式

2.python 匿名函数lambda

3.python列表推导式

4.python字典推导式

 

转载请注明猿说Python » python内置函数input/eval


猜你喜欢

转载自blog.51cto.com/14531342/2459815