python中的内置函数(一)
内置函数:内置函数就是python提供的,可以拿来直接用的函数
作用域相关
locals():返回当前作用域中的名字
globals():返回全局作用域中的内容
def func():
print('我早晨吃了一个苹果')
def func1():
print('我下午吃了一个桃')
def func2():
print('都挺好吃')
func2()
print(globals())#'func': <function func at 0x000001BA3E9F2EA0>
print(locals())#func1 at 0x000001BA3EBC08C8>
func1()
func()
迭代器相关
range():生成数据
print(list(range(5)))
[0, 1, 2, 3, 4]
next():迭代器向下执行一次,内部实际使用了__next__()方法
iter():获取迭代器,内部其实是使用了__iter__()方法来获取迭代器
lis=[1,2,3,4,5]
it=iter(lis)#获取迭代器
print(next(it))#迭代器向下执行一次
print(next(it))
print(next(it))
字符串相关
eval():执行字符串类型的代码,并返回结果,是求值
a="{'你':'是','我':'的','大':'猪','蹄':'子儿'}"
print(eval(a)['蹄'])
exec():执行字符串类型的代码,如果是多行,注意缩进,是执行,没有返回结果
exec('''for i in range(5):
print(i)
''') eval('''for i in range(5):
print(i)
''') #invalid syntax(语法错误)
compile(),将字符串中代码编译,代码能够通过exec()执行,或者通过eval()进行求值
(有返回值形式的字符串用eval(),没有返回值类型的字符串用exec())
语法:compile(source, filename, mode[, flags[, dont_inherit]])
source -- 字符串或者AST(Abstract Syntax Trees)对象。。
filename -- 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
mode -- 指定编译代码的种类。可以指定为 exec, eval, single
code='''for i in range(6):
print(i)
'''
c1=compile(code,'',mode='exec') #如果是编译字符串,第二个文件的位置要''
exec(c1)
0
1
2
3
4
5 code='1+2+3'
c=compile(code,'',mode='eval')
print(eval(c))# 有用户交户的mode用single
code='content=input("请输入想吃的?")'
a=compile(code,'',mode='single') #有用户交户的用single
exec(a)
print(content) #pycharm里的报错信息,不一定是对的
请输入想吃的?太撑了,不想吃
太撑了,不想吃
输入输出相关
input():获取用户输入的内容
print():打印输出
content=input('今天喝了多少水?')
print(content)
"C:\Program Files\Python36\python.exe"
今天喝了多少水?三杯
三杯
内存相关
hash():获取到对象的hash值
lis=(1,2,3,4,5)
print(hash(lis)) #
哈希计算之后是一串数字,可能很大,也可能很小还有可能是复数,哈希的目的是为了存储,
但有一个缺点就是耗内存,是在以空间换取时间,哈希值尽量不要重复(在某些特定的环境下可能会重复)
id():获取到对象的内存地址
lis=[1,2,3,4,5,6]
print(id(lis))#
文件操作相关
open():用于打开一个文件,创建一个文件句柄
f=open('daily.txt',mode='r',encoding='utf-8')
模块相关
__import__():用于动态加载类和函数.import里面封装的__import__()
帮助
help():用于查看函数或模块用途的详细说明
dir():查看内置属性,方法,访问的是对象中的__dir__()方法
dir()和help()的区别:
help(list) #help除了方法属性外还有介绍
print(dir(list)) #dir出来的是含有的方法属性
调用相关
callable()用于检查一个对象是否可用,如果返回true,object有可能调用失败,
如果返回的是False,一定不会调用成功
lis=[1,2,3,4,55,6]
a=1
def func():
b=a+1
print(a)
func()
print(callable(func))
基础数据类型相关
数字相关:
bool():将给定的值转换bool型,如果不给值返回False
int():将给定的值转换int型,如果不给值返回False
float():将给定的值转换int型,也就是小数
a=''
print(type(a))
print(type(int(a)))
print(type(bool(a)))
print(type(float(a)))
<class 'str'>
<class 'int'>
<class 'bool'>
<class 'float'>
print(float(1)) #1.0
complex():创建一个复数,第一个参数为实部,第二个参数为虚部,或者第一个参数直接用字符串来描述复数(与数学中不同的是复数用a+bj而不是a+bi)
print(complex(1,2)) #(1+2j)
进制转换:
bin():将给的参数转换成二进制
otc():将给的参数转换成八进制
hex():将给的参数转换成十六进制 # 0 1 2 3 4 5 6 7 8 9 a b c d e f
a=10
print(bin(a))
print(oct(a))
print(hex(a))
0b1010
0o12
0xa
数学运算:
abs():返回绝对值
a=-5
print(abs(a)) #
divmod():返回商和余数
print(divmod(6,3))#(2, 0)
round():四舍五入(这台机器是五舍六入)
print(round(4.5))
pow(a,b):求a的b次幂,如果输入三个数,则求完次幂后对第三个数取余
print(pow(2,3)) #
print(pow(2,3,2)) #
sum():求和sum中放的必须是可迭代对象
print(sum(1,2)) #'int' object is not iterable
print(sum([1,2,3,4,5,6])) #
min():最小值
max():最大值
lis=[1,2,3,4,5,6]
print(min(lis),max(lis)) #1 6
数据结构相关
列表和元组:
list() 将一个可迭代对象转换成列表
tuple() 将一个可迭代对象转换成元组
a='asdfghj'
print(list(a)) #['a', 's', 'd', 'f', 'g', 'h', 'j']
print(tuple(a)) #('a', 's', 'd', 'f', 'g', 'h', 'j')
reversed():将一个序列翻转,返回翻转序列的迭代器
a='asdfghjkl'
it=reversed(a)
print(it.__next__()) #l
slice():列表的切片
a=[1,2,3,4,5,6]
s=slice(0,4,2)
print(a[s]) #[1, 3] 值得注意的是打印的时候要用print(a[s])这种写法
字符串相关
str():将数据转化成字符串
a=12
print(type(str(a))) #<class 'str'>
format():与具体数据相关,用于计算小数精算等,format还可以用来格式化
字符串:
print(format('test','<20')) #test 扩展为20个字符,并将test左对齐
print(format('test','>20')) # test扩展为20个字符,并将test右对齐
print(format('test','^20')) # test 扩展为20个字符,并将test居中
数值:
print(format(3,'b')) #将三转换成二进制 #11
print(format(97,'c')) #把97转换成97对应的Unicode字符 #a
print(format(11,'d')) #将11转换成十进制 #11
print(format(111122348542,'o')) #转换成八进制 #1473732074776
print(format(465456461,'x')) #转换成16进制,用小写字母表示 #1bbe4d4d
print(format(465456461,'X')) #转换成16进制,用大写字母表示 #1BBE4D4D
print(format(11,'n')) #十进制
print(format(11)) #
浮点数
print(format(123456789,'e')) #1.234568e+08科学计数法,默认保留六位小数
print(format(123456789,'0.2e')) #1.23e+08 科学计数法,默认保留两位小数(e小写)
print(format(123456789,'0.2E')) #1.23E+08 #科学计数法,默认保留两位小数(e大写)
print(format(123456789,'f')) #123456789.000000 小数点计数法,默认保留六位小数
print(format(123456789,'0.2f')) #123456789.00 #小数点计数法,默认保留两位小数
print(format(123456789,'0.10f')) #123456789.0000000000 小数点计数法,默认保留10位小数
print(format(1.23456789e+10000,'F')) #INF 小数点计数法
bytes();把字符串转换成某某类型,后面要加上编码类型
s='你好!'
print(bytes(s,encoding='utf-8'))
bytearry()
ret=bytearray('你好',encoding='utf-8')
print(ret) #bytearray(b'\xe4\xbd\xa0\xe5\xa5\xbd')
memoryview():查看bytes在内存中的情况
s=memoryview('李小龙'.encode('utf-8'))
print(s) #<memory at 0x0000014E41955F48>
ord()输入字符,查找字符编码的位置
chr()输入位置查找对应的字符
ascii()是ascii码中的就有返回值,否则就返回\u
print(ord('a')) #
print(ord('中')) # print(chr(97)) #a
print(chr(20013)) #中 print(ascii('a')) #'a'
print(ascii('中')) '\u4e2d'
repr():返回正式的官方的字符串
print(repr('大家好,我叫周杰伦'))
print(repr('大家好/n,我叫周杰伦'))
print(repr('大家好\n,我叫周杰伦'))
print(repr('大家好\t,我叫周杰伦'))
print(repr('大家好\\,我叫周杰伦'))
print(repr('大家好\\\,我叫周杰伦'))
print(repr('大家好\\\\,我叫周杰伦'))
print(repr('周杰伦说"大家好,我叫周杰伦"'))
print(repr("周杰伦说'大家好,我叫周杰伦'")) '大家好,我叫周杰伦'
'大家好/n,我叫周杰伦'
'大家好\n,我叫周杰伦'
'大家好\t,我叫周杰伦'
'大家好\\,我叫周杰伦'
'大家好\\\\,我叫周杰伦'
'大家好\\\\,我叫周杰伦'
'周杰伦说"大家好,我叫周杰伦"'
"周杰伦说'大家好,我叫周杰伦'"
dict{}创建一个字典
dict={}
print(dict)
set():创建一个集合
s=set()
print(type(s)) #<class 'set'>
frozenset():创建一个冻结的集合,冻结的集合不能进行增加和删除操作
frozenset={}
print(frozenset)
len():返回一个对象中元素的个数
enumerate():获取集合的枚举对象
lis=[1,2,3,4]
for i, j in enumerate(lis):
print(i,j)
0 1
1 2
2 3
3 4
all()可迭代对象中 全部是true才是true:
any()可迭代对象中有一个是true就是true
print(all([1,2,3,4,5])) #True
print(all([1,2,3,4,5,0])) #False
print(any([1,2,3,4,5])) #True
print(any([1,2,3,4,5,0])) #True
python中的内置函数(一)的更多相关文章
- python中的内置函数,递归,递归文件显示(二),二分法
1.部分内置函数 repr()显示出字符串的官方表示形式,返回一个对象的string形式 # repr 就是原封不动的输出, 引号和转义字符都不起作用 print(repr('大家好,\n \t我叫周 ...
- python中的内置函数(一), lambda, filter, map
https://www.processon.com/view/link/5c10da0ce4b099ae3e137bf6 1.内置函数 内置函数就是python中提供的,可以直接拿来用的函数,比如pr ...
- python中一些内置函数实例
lambda表达式 简单函数可用lambda表达式 1. def f1() return(123) r1=f1() print() 2. f2=lambda:123 r2=f2() print() 以 ...
- python中的内置函数(2)
一.lambda匿名函数定义:为了解决一些简单的需求而设计的一句话函数例子:计算n的n次方 def func(n):#正常的写法 return n**2 f=lambda n:n**2 这里的lamb ...
- 2018.8.14 python中的内置函数(68个)
主要内容: python中68个内置函数的功能及使用方法
- python学习之【第十篇】:Python中的内置函数
1.前言 内置函数,就是Python内部预先定义好的函数,可以直接使用,Python中内置函数有以下这么多个: 2.map() 描述: map() 会根据提供的函数对指定序列做映射.第一个参数 fun ...
- Python中max()内置函数使用(list)
在学习完列表和元组的基础知识后,做到一个题: 求出列表中频次出现最多的元素. 学习到了python内置函数max的用法 其参数key的用法 匿名函数lamda的用法 python内置函数max() m ...
- python中常用内置函数和关键词
Python 常用内置函数如下: Python 解释器内置了很多函数和类型,您可以在任何时候使用它们.以下按字母表顺序列出它们. 1. abs()函数 返回数字的绝对值. print( abs(-45 ...
- Python中的内置函数__init__()的理解
有点意思,本来我是学习java的.总所周知,java也有构造函数,而python在面向对象的概念中,也有构造函数.它就是 __init__(self) 方法. 其实类似于__init__()这种方法, ...
随机推荐
- 多线程编程 CreateThread(解释了TContext)
function CreateThread( lpThreadAttributes: Pointer; {安全设置} dwStackSize: DWORD; ...
- delphi 中的函数指针 回调函数(传递函数指针,以及它需要的函数参数)
以下代码仅仅是测试代码:delphi XE7 UP1 interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.V ...
- 将 WPF、UWP 以及其他各种类型的旧 csproj 迁移成基于 Microsoft.NET.Sdk 的新 csproj
原文 将 WPF.UWP 以及其他各种类型的旧 csproj 迁移成基于 Microsoft.NET.Sdk 的新 csproj 写过 .NET Standard 类库或者 .NET Core 程序的 ...
- 利用.net Core 对程序集中的类 进行统一依赖注入
1.创建特性 用于标注依赖注入 using Microsoft.Extensions.DependencyInjection; using System; using System.Collectio ...
- NS2网络模拟(1)-延迟
1: #NS2_有线部分\EndDelay.awk 2: 3: BEGIN { 4: #Initialize the variable 5: MaxID = 0; 6: i = 0; 7: } 8: ...
- DNS查询工具:host、nslookup、dig
作者:zhanhailiang 日期:2014-11-01 1. host host提供域名到IP地址的双向解析: host默认通过/etc/resolv.conf读取Name Server来解析,除 ...
- 从零开始学习 asp.net core 2.1 web api 后端api基础框架(三)-创建Data Transfer Object
原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(三)-创建Data Transfer Object 版权声明:本文为博主原创文章,未经博主允许不得转载. ht ...
- DOS符号转义(转 http://www.robvanderwoude.com/escapechars.php)
Escape Characters Character to be escaped Escape Sequence Remark % %% May not always be required in ...
- C# WPF 中用代码模拟鼠标和键盘的操作
原文:C# WPF 中用代码模拟鼠标和键盘的操作 原文地址 C#开发者都知道,在Winform开发中,SendKeys类提供的方法是很实用的.但是可惜的是,在WPF中不能使用这个方法了. 我们知道,在 ...
- Bootstrap 屏幕类型
/* 超小屏幕(手机,小于 768px) */ /* 没有任何媒体查询相关的代码,因为这在 Bootstrap 中是默认的(还记得 Bootstrap 是移动设备优先的吗?) */ /* 小屏幕(平板 ...