Python 内置函数 :eval、exec、hash、help、callable

嚴華  金牌会员 | 2023-7-26 17:06:57 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 938|帖子 938|积分 2814

1.eval()

功能描述:“剥去字符串的外衣”,去运行字符串里面的代码
作用 :
(1)参数是一个类似"1+3"这样数学表达式的字符串,可以计算得到返回值(int型)
(2)参数是一个类似"{'name':'tian','age':18}"这样字典、列表、元组外套上一对引号的字符串,可以快速得到字典、列表、元组    
  1. s1 = eval("1+3")
  2. print(s1)
  3. s2 = eval("{'name':'tian','age':18}")
  4. s3 = eval("[[1,2], [3,4], [5,6], [7,8], [9,0]]")
  5. print(s2,type(s2),s3,type(s3))
  6. #{'name': 'tian', 'age': 18} <class 'dict'> [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]] <class 'list'>
复制代码
2.exec() 功能和eval 类似,只不过能执行更复杂代码  返回值为none

  1. s1 = exec("print('nihao')")
  2. s2 = """
  3. a = 1
  4. b = 2
  5. c = 3
  6. sum = a + b + c
  7. print(sum)
  8. """
  9. exec(s2)
  10. print(exec(s1))
  11. ##结果为
  12. 6
  13. 6
  14. None
复制代码
3.hash() 获取一个对象的哈希值。 注意对象是不可变类型:int tuple str  返回值为哈希值

  1. s1 = hash(1)
  2. s2 = hash("hello world")
  3. s3 = hash("good job")
复制代码
4.help() 函数用于查看函数或模块用途的详细说明。可以传入一个模块名,或者模块名.方法

  1. print(help(exec))
  2. print(help(list.append))
复制代码
5.callable() 判断能否被调用。返回值为True,可调用。返回值为False,不可调用。

  1. #Python小白学习交流群:711312441
  2. s1 =  '123'
  3. def func():
  4.      print("hello world")
  5. print(callable(s1))
  6. print(callable(func))
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

嚴華

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表