返回顶部

68 个 Python 内置函数详解(下)

[复制链接]
气泡水Lv.2 显示全部楼层 发表于 2021-12-9 14:00:59 |阅读模式 打印 上一主题 下一主题
  和迭代器生成器相关

  range() 生成数据

  next() 迭代器向下执行一次, 内部实际使⽤用了__ next__()⽅方法返回迭代器的下一个项目

  iter() 获取迭代器, 内部实际使用的是__ iter__()⽅方法来获取迭代器

[Python] 纯文本查看 复制代码
for i in range(15,-1,-5):
    print(i)
# 15
# 10
# 5
# 0
lst = [1,2,3,4,5]
it = iter(lst)  #  __iter__()获得迭代器
print(it.__next__())  #1
print(next(it)) #2  __next__()  
print(next(it))  #3
print(next(it))  #4


  字符串类型代码执行

  eval() 执行字符串类型的代码. 并返回最终结果

  exec() 执行字符串类型的代码

  compile() 将字符串类型的代码编码. 代码对象能够通过exec语句来执行或者eval()进行求值

[Python] 纯文本查看 复制代码
s1 = input("请输入a+b:")  #输入:8+9
print(eval(s1))  # 17 可以动态的执行代码. 代码必须有返回值
s2 = "for i in range(5): print(i)"
a = exec(s2) # exec 执行代码不返回任何内容

# 0
# 1
# 2
# 3
# 4
print(a)  #None

# 动态执行代码
exec("""
def func():
    print(" 我是周杰伦")
""" )
func()  #我是周杰伦
code1 = "for i in range(3): print(i)"
com = compile(code1, "", mode="exec")   # compile并不会执行你的代码.只是编译
exec(com)   # 执行编译的结果
# 0
# 1
# 2

code2 = "5+6+7"
com2 = compile(code2, "", mode="eval")
print(eval(com2))  # 18

code3 = "name = input('请输入你的名字:')"  #输入:hello
com3 = compile(code3, "", mode="single")
exec(com3)
print(name)  #hello


  输入输出

  print() : 打印输出

  input() : 获取用户输出的内容

[Python] 纯文本查看 复制代码
print("hello", "world", sep="*", end="@") # sep:打印出的内容用什么连接,end:以什么为结尾
#hello*world@


  内存相关

  hash() : 获取到对象的哈希值(int, str, bool, tuple). hash算法1) 目的是唯一性 (2) dict 查找效率非常高, hash表.用空间换的时间 比较耗费内存

[Python] 纯文本查看 复制代码
s = 'alex'print(hash(s))  #-168324845050430382lst = [1, 2, 3, 4, 5]print(hash(lst))  #报错,列表是不可哈希的  id() :  获取到对象的内存地址s = 'alex'print(id(s))  #2278345368944


  文件操作相关

  open() : 用于打开一个文件, 创建一个文件句柄

[Python] 纯文本查看 复制代码
f = open('file',mode='r',encoding='utf-8')
f.read()
f.close()


  模块相关

  __ import__() : 用于动态加载类和函数

[Python] 纯文本查看 复制代码
# 让用户输入一个要导入的模块
import os
name = input("请输入你要导入的模块:")
__import__(name)    # 可以动态导入模块


  帮助

  help() : 函数用于查看函数或模块用途的详细说明

[Python] 纯文本查看 复制代码
print(help(str))  #查看字符串的用途


  调用相关

  callable() : 用于检查一个对象是否是可调用的. 如果返回True, object有可能调用失败, 但如果返回False. 那调用绝对不会成功

[Python] 纯文本查看 复制代码
a = 10
print(callable(a))  #False  变量a不能被调用
#
def f():
    print("hello")
    print(callable(f))   # True 函数是可以被调用的


  查看内置属性

  dir() : 查看对象的内置属性, 访问的是对象中的__dir__()方法

[Python] 纯文本查看 复制代码
print(dir(tuple))  #查看元组的方法


 
 【免责声明】本文系转载,文章来源于公众号Python开发者,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与联系我们,我们会予以更改或删除相关文章,以保证您的权益!


回复

使用道具 举报

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

本版积分规则

达内教育:成立于2002年。致力于面向IT互联网行业,培养软件开发工程师、测试工程师、系统管理员、智能硬件工程师、UI设计师、网络营销、会计等职场人才 达内使命:缔造年轻人的中国梦、缔造达内员工的中国梦 达内愿景:做管理一流的教育公司
  • 商务合作

  • 微信公众号

  • Powered by Discuz! X3.4 | Copyright © 2002-2021, 达内教育 Tedu.cn
  • 京ICP备08000853号-56 |网站地图 | 京公网安备 11010802029508号