1. 和数字相关
1.1 数据类型
1.2 进制转换
1.3 数学运算
************************************************************
和数字相关
1.1 数据类型
1.1.1 bool:布尔型(True,False)
1.1.2 int:整型(整数)
1.1.3 float:浮点型(小数)
1.1.4 complex:复数
2.1 进制转换
2.1.1 bin() 将给的参数转换成二进制
2.1.2 oct() 将给的参数转换成八进制
2.1.3 hex() 将给的参数转换成十进制
print(bin(10)) #0b1010 二进制
print(hex(10)) #0xa 十六进制
print(oct(10)) #0o12 八进制
3.1 数学运算
3.1.1 abs() 返回绝对值
3.1.2 divmod() 返回商和余数
3.1.3 round() 四舍五入
3.1.4 pow(a,b) 求a的b次幂
3.1.5 sum() 求和
3.1.6 min() 求最小值
3.1.7 max() 求最大值
print(abs(-2)) #2 求绝对值
print(divmod(20,3)) #(6, 2) 求商和余数
print(round(4.50)) #4 五舍六入
print(pow(10,2,3)) #1 10^2%3
print(sum([1,2,3,4,5,6,7,8,9,10])) #55 求和
print(min(5,3,9,23,4,6)) #3 求最小值
print(max(3,2,1,4,5,6)) #6 求最大值
和数据结构相关
2.1 序列
2.1.1列表和元组
list() 将一个可迭代对象转换成列表
tuple() 将一个可迭代对象转换成元组
print(list((1,2,3,4,5,6))) #\[1, 2, 3, 4, 5, 6\]
print(tuple(\[1,2,3,4,5,6\])) #(1, 2, 3, 4, 5, 6)
2.1.2 相关内置函数
reversed() 将一个序列翻转,返回翻转序列的迭代器
slice() 列表的切片
lst = "你好啊"
it = reversed(lst) # 不会改变原列表. 返回一个迭代器, 设计上的一个规则
print(list(it)) #\['啊', '好', '你'\]
lst = \[1,2,3,4,5,6,7\]
print(lst\[1:3:1\]) #\[2, 3\]
s = slice(1,3,1) #切片用的
print(lst\[s\]) #\[2, 3\]
2.1.3 字符串
2.1.3.1 str() 将数据转化成字符串
print(str(123) + '456') #1234562.1.3.2 format() 与具体数据相关,用于计算各种小数,精算等。
# s = "hello world!"
# print(format(s, "^20")) #居中
# print(format(s, "<20")) #左对齐
# print(format(s, ">20")) #右对齐
# hello world!
# hello world!
# hello world!
print(format(3,'b')) #11 二进制
# print(format(97, 'c')) #a 转换成unicode字符a
# print(format(11, 'd')) #11 十进制
# print(format(11, 'o')) #13 八进制
# print(format(11, 'x')) #b 十六进制(小写字母b)
# print(format(11, 'X')) #B 十六进制(大写字母B)
# print(format(11, 'n')) #11 和d一样
# print(format(11)) #11 和d一样
# print(format(123456789, 'e')) #1.234568e+08 科学计数法,默认保留6位小数
# print(format(123456789, '0.2e')) #1.23e+08 科学计数法,保留2位小数(小写)
# print(format(123456789, '0.2E')) #1.23E+08 科学计数法,保留2位小数(大写)
# print(format(1.23456789, 'f')) #1.234568 小数点计数法,保留后6位
# print(format(1.23456789, '0.2f')) #1.23 小数点计数法,保留2位小数
# print(format(1.23456789, '0.10f')) #1.2345678900 小数点计数法,保留10位小数
# print(format(1.23456789e+3, 'F')) #1234.567890 小数点计数法,很大的时候输出INF
2.1.3.3 bytes() 把字符串转化成bytes类型
bs = bytes("今天吃饭了吗",encoding="utf-8")
print(bs)
#b'\\xe4\\xbb\\x8a\\xe5\\xa4\\xa9\\xe5\\x90\\x83\\xe9\\xa5\\xad\\xe4\\xba\\x86\\xe5\\x90\\x97'
ret = bytearray("alex",encoding = 'utf-8')
print(ret\[0\]) #97
print(ret) #bytearray(b'alex')
ret\[0\] = 65 #把65的位置A赋值给ret\[0\]
print(str(ret)) #bytearray(b'Alex')
2.1.3.4 ord() 输入字符找带字符编码的位置
2.1.3.5 chr() 输入位置数字找出对应的字符
2.1.3.6 ascii() 是ascii码中的返回该值,不是返回u
print(ord('a')) #97 字母a在编码表中的码位
print(ord('中')) #20013 ‘中’字在编码表中的位置
print(chr(65)) #A 已知码位,求字符是什么
print(chr(19999)) #丢
for i in range(65536):
print(chr(i), end="")
# !"#$%&'()\*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\[\\\]" \\
# "^\_\`abcdefghijklmnopqrstuvwxyz{|}~
&nbsp;" \\
# "¡¢£¤¥¦§¨ª«¬¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×" \\
# "ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿĀāĂ㥹ĆćĈĉĊċČčĎďĐđĒēĔĕ" \\
# "ĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĸĹĺĻļĽľĿŀŁłŃńŅņŇňʼnŊŋŌōŎŏŐőŒœŔ" \\
# "ŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽžſƀƁƂƃƄƅƆƇƈƉƊƋƌƍƎƏƐƑƒƓ" \\
# "" "ƔƕƖƗƘƙƚƛƜƝƞƟƠơƢƣƤƥƦƧƨƩƪƫƬƭƮƯưƱƲƳƴƵƶƷƸƹƺƻƼƽƾƿǀǁǂǃDŽDždžLJLjljNJNjnjǍǎǏ" \\
# "ǐǑǒǓǔǕǖǗǘǙǚǛǜǝǞǟǠǡǢǣǤǥǦǧǨǩǪǫǬǭǮǯǰDZDzdzǴǵǶǷǸǹǺǻǼǽǾǿȀȁȂȃȄȅȆȇȈȉȊȋȌȍȎȏ" \\
# "ȐȑȒȓȔȕȖȗȘșȚțȜȝȞȟȠȡȢȣȤȥȦȧȨȩȪȫȬȭȮȯȰȱȲȳȴȵȶȷȸȹȺȻȼȽȾȿɀɁɂɃɄɅɆɇɈɉɊɋɌɍɎɏɐ" \\
# "ɑɒɓɔɕɖɗɘəɚɛɜɝɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿʀʁʂʃʄʅʆʇʈʉʊʋʌʍʎʏ" \\
# "ʐʑʒʓʔʕʖʗʘʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯʰʱʲʳʴʵʶʷʸʹʺʻʼʽʾʿˀˁ˂˃˄˅ˆˇˈˉˊˋˌˍˎˏːˑ˒˓
print(ascii('@')) #'@'
2.1.3.7 repr() 返回一个对象的string形式</code></pre>
2.2 数据集合
2.2.1 字典:dict创建1个字典
集合:set创建1个集合
frozenset() 创建1个冻结的集合,冻结的集合不能进行添加和删除操作
2.3 相关内置函数
2.3.1 len() 返回1个对象的元素的个数
2.3.2 sorted() 对可迭代对象进行排序操作(lamda)
语法:sorted(Iterable,key=函数(排序规则),reverse=False)
2.3.3 Iterable:可迭代对象
2.3.4 key:排序规则(排序函数),在sorted内部会将可迭代对象中的每1个元素传递给这个函数的参数。
根据函数运算的结果进行排序
2.3.5 reverse:是否是倒叙。True:倒叙;False:正序
lst = \[5,7,6,3,2,1,8,54,33,42\]
lst.sort() #sort是list里面的1个方法
print(lst) #\[1, 2, 3, 5, 6, 7, 8, 33, 42, 54\]
l1 = sorted(lst) #内置函数,返回给你1个新列表,新列表是被排序的
print(l1) #\[1, 2, 3, 5, 6, 7, 8, 33, 42, 54\]
l2 = sorted(lst,reverse=True) #倒序
print(l2) #\[54, 42, 33, 8, 7, 6, 5, 3, 2, 1\]
#根据字符串长度给列表排序
lst = \['one','two','three','four','five','six'\]
def f(s):
return len(s)
l1 = sorted(lst,key=f,)
print(l1) #\['one', 'two', 'six', 'four', 'five', 'three'\]
2.3.6 enumerate() 获取集合的枚举对象
lst = \['one','two','three','four','five'\]
for index, el in enumerate(lst,1): #把索引和元素一起获取,索引默认从0开始,可以更改
print(index)
print(el)
# 1
# one
# 2
# two
# 3
# three
# 4
# four
# 5
# five
2.3.7 all() 可迭代对象中全部是True,结果才是True
2.3.8 any() 可迭代对象中有一个是True,结果就是True
print(all(\[1,'hello',True,9\])) #True
print(any(\[0,0,0,False,1,'good'\])) #True
2.3.9 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,
然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的
对象相同。lst1 = \[1,2,3,4,5,6\]
lst2 = \['醉乡民谣','驴得水','放牛班的春天','美丽人生','辩护人','被嫌弃的松子的一生'\]
lst3 = \['美国','中国','法国','意大利','韩国','日本'\]
print(zip(lst1,lst2,lst3)) #<zip object at 0x0074BBE8>
for el in zip(lst1,lst2,lst3):
print(el)
# (1, '醉乡民谣', '美国')
# (2, '驴得水', '中国')
# (3, '放牛班的春天', '法国')
# (4, '美丽人生', '意大利')
# (5, '辩护人', '韩国')
# (6, '被嫌弃的松子的一生', '日本')
2.3.10 filter() 过滤(lamda)
语法:filter(function.Iterable)
function: 用来筛选的函数。在filter中会自动的把iterable中的元素传递给function.
然后根据function返回的True或者False来判断是否保留此项数据,Iterable:可迭代对象def func(i):
return i % 2 ==1
lst = \[1,2,3,4,5,6,7,8,9\]
l1 = filter(func,lst)
print(l1) #<filter object at 0x0050F130>
print(list(l1)) #\[1, 3, 5, 7, 9\]
2.3.11 map() 会根据提供的函数对指定序列做映射(lamda)
语法:map(function,iterable)
可以对可迭代对象中的每一个元素进行映射,分别去执行functiondef f(i):
return i
lst = \[1,2,3,4,5,6,7\]
it = map(f,lst)
print(list(it)) #\[1, 2, 3, 4, 5, 6, 7\]
# 把可迭代对象中的每一个元素传递给前面的函数进行处理. 处理的结果会返回成迭代器</code></pre></li>
和作用域相关
3.1 locals() 返回当前作用域中的名字
3.2 global() 返回全局作用域中的名字
def func():
a = 10
print(locals()) #当前作用域中的内容
print(globals()) #全局作用域中的内容
print("今天内容很多")
func()
# {'a': 10}
# {'\_\_name\_\_': '\_\_main\_\_', '\_\_doc\_\_': None, '\_\_package\_\_': None, '\_\_loader\_\_': <\_frozen\_importlib\_external.SourceFileLoader object at 0x006FDF70>, '\_\_spec\_\_': None, '\_\_annotations\_\_': {}, '\_\_builtins\_\_': <module 'builtins' (built-in)>, '\_\_file\_\_': 'H:/Python learning/68个内置函数/68个内置函数.py', '\_\_cached\_\_': None, 'func': <function func at 0x0089E3D8>}
# 今天内容很多
和迭代器生成器相关
4.1 range() 生成数据
4.2 next() 迭代器向下执行1次,内部实际使用了__next__()方法返回迭代器的下一个项目
4.3 iter() 获取迭代器,内部实际使用的是__iter__()方法来获取迭代器
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
print(next(it)) #3
print(next(it)) #4
字符串类型代码的执行
5.1 eval() 执行字符串类型的代码,并返回最终结果
5.2 exec() 执行字符串类型的代码
5.3 compile() 将字符串类型的代码编码。代码对象能够通过exec语句来执行或者eval()进行求值
# s1 = input("请输入a+b:") #输入1+2
# print(eval(s1)) #3 可以动态的执行代码,代码必须有返回值
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('请输入你的名字:')" #输入kevin.hou
com3 = compile(code3,"",mode="single")
exec(com3)
print(name) #kevin.hou
输入输出
6.1 print() 打印输出
6.2 input() 获取用户输出的内容
print("hello","world",sep="*",end="@") #hello*world@
sep:打印出的内容用什么连接,end: 以什么为结尾
内存相关
7.1 hash(): 获取到对象的哈希值(int,str,bool,tuple).
hash算法: (1) 目的是唯一性
(2) dict查找效率非常高,hash表用空间换的时间,比较耗费内存
s = 'alex'
print(hash(s)) #326079235
lst = \[1,2,3,4,5\]
print(hash(lst)) #TypeError: unhashable type: 'list'。报错,列表是不可哈希的
文件操作相关
8.1 open() 用于打开1个文件,创建1个文件句柄
f = open('file',mode='r',encoding='utf-8')
f.read()
f.close()
模块相关
__import__() 用于动态加载类和函数
#让用户输入1个要导入的模块
import os
name = input("请输入你要导入的模块:")
__import__(name) #可以动态导入模块
帮助
10.1 help() 函数用于查看函数或模块用途的详细说明
print(help(str))
调用相关
11.1 callable()用于检查1个对象是否是可调用的。如果返回True,object有可能调用失败,
但如果返回False,那么调用绝对不会成功
a = 10
print(callable(a)) #False 变量a不能被调用
def f():
print("hello")
print(callable(f)) #True f()函数是可以被调用的
查看内置属性
12.1 dir()查看对象的内置属性,访问的是对象中的__dir__()方法
print(dir(tuple))
#['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__',
'__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__',
'__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__',
'__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmul__',
'__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'count', 'index']
python3.6.2
abs()
all()
any()
ascii()
bin()
bool()
bytearray()
bytes()
callable()
chr()
classmethod()
compile()
complex()
delattr()
dict()
dir()
divmod()
enumerate()
eval()
exec()
filter()
float()
format()
frozenset()
getattr()
globals()
hasattr()
hash()
help()
hex()
id()
input()
int()
isinstance()
issubclass()
iter()
len()
list()
locals()
map()
max()
memoryview()
min()
next()
object()
oct()
open()
ord()
pow()
print()
property()
range()
repr()
reversed()
round()
set()
setattr()
slice()
sorted()
staticmethod()
str()
sum()
super()
tuple()
type()
vars()
zip()
__import__()
手机扫一扫
移动阅读更方便
你可能感兴趣的文章