输入输出 print 、input
message = input()
if __name__ == "__main__":
print("running")
print(message)
基本数据类型 int()等
数字类型的数值转换
int(),float(),bool(),complex()
a = 1.23
print(int(a))
其他类型 str()、 list()、 tuple() 、set() 、dict()等
# 类型转换
string = str(123456)
list()、 tuple() 、set() 、dict()这些函数可以用来创建对应的数据类型。
数学运算
abs():返回绝对值
divmod():返回商和余数
a = divmod(22,5)
print(a) ##(4, 2)
round():四舍五入
a = round(10.2453, 2)
print(a) # 10.25
pow(a,b):返回a的b次幂,如果有第三个参数,则求完幂次后对第三个数取余
a = pow(10, 2)
print(a) # 100
sum():求和
list1 = [1, 2, 3, 4, 5]
a = sum(list1)
print(a) # 15
min():求最小值 max():求最大值
输入参数为一个可迭代的参数
进制转换
bin():将给定的参数转换为二进制
a = 123
b = bin(a)
print(b) ##0b1111011
oct():将给定的参数转换为八进制
hex():将给定的参数转换为十六进制
序列集合操作
reversed():将一个序列翻转,返回一个反向的迭代器
# reversed接受一个序列参数,返回的是一个逆迭代对象,所以需要在使用序列再转换回去
list1 = [1, 2, 3, 4, 5]
print(list(reversed(list1)))
# 输出[5, 4, 3, 2, 1]
slice():列表的切片
# slice主要做序列切片,可以从其中切取部分重新组成新的序列
list1 = [1, 2, 3, 4, 5]
s = slice(1, 3)
print(list1[s])
# 推荐使用简写方式:lst[start:stop]
list1 = [1, 2, 3, 4, 5]
print(list1[1:3])
bytes():把字符串转化为bytes类型
b = bytes('AKB', encoding='utf-8')
print(b) ## b'AKB'
ord():输入字符找到对应编码的位置
print(ord('a')) # 97
print(ord('小')) # 31243
chr():输入位置数字找出对应的字符
# 输出33~1000数字对应的字符
for i in range(33, 1000):
print(chr(i), end=' ')
ascii():将Unicode字符串转换为ASCII字符
repr():返回一个对象的字符串
len():返回一个对象中元素的个
sorted():对可迭代对象进行排序操作
enumerate():获取集合的枚举对象
all():可迭代对象中所有元素都为True,返回结果才为True
any():可迭代对象中只要有一个是True,返回结果就是True
zip():在多个迭代器上并行迭代,从每个迭代器返回一个数据项组成元组,如果各个迭代器的元素个数不同,则返回列表长度与最短的对象相同
filter():过滤器可以接收一个自定义筛选函数,将迭代器中的元素传到函数中进行判断,用来确定是否保留这个元素。
# 过滤出数据中的偶数
def func(i):
return i % 2 == 0
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
lst = filter(func, list1)
print(list(lst))
# [2, 4, 6, 8]
map():可以对可迭代对象中的元素进行映射,分别去执行自定义函数
# 给数据中每个元素加1
def func(i):
return i + 1
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
lst = map(func, list1)
print(list(lst))
# [2, 3, 4, 5, 6, 7, 8, 9, 10]
文件操作
f = open("name.txt", 'r', encoding='utf-8')
f.read()
f.close()
和迭代器相关
range():生成可迭代数据
next():迭代器向下执行一次
iter():获取迭代器
# 使用range生成数据给列表
# iter获取序列的一个迭代器,然后可以使用next进行逐个输出
list1 = list(range(1, 6)) # [1, 2, 3, 4, 5]
it = iter(list1)
print(next(it)) # 1
作用域相关(用于查错)
locals():以字典形式返回当前作用域中的变量名字
globals():以字典形式返回全局作用域中的变量名字
# 当前作用域和全局作用域的用法
def func():
a = 100
b = 'abc'
print(locals())
print('-------')
print(globals())
func()
# {'a': 100, 'b': 'abc'}
#-------
其他
help():函数用于查看其他函数或者模块的说明
# 获取list函数的帮助文档
print(help(list))
callable():用于检查一个对象是否可以调用
hash():获取到hash值,用于做key
dir():查看对象的内置属性和方法
print(dir(str))
import():用于动态加载类和函数
# 动态加载os模块
name = input("请输入你要导入的模块:") # 输入os
os = __import__(name)
print(os.getcwd())
vars () 函数获取类实例的属性字典
def func():
print("hello")
class Test():
def __init__(self):
self.A = 0
self.B = "你好"
self.C = func
if __name__ == "__main__":
Test1 = Test()
print(vars(Test1))
getattr () 函数获取属性的值
object
: 要获取属性的对象。
name
: 属性的名称。
default
(可选): 如果属性不存在,则返回的默认值。
例1
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
person = Person("Alice", 30)
name = getattr(person, "name")
print(name)
例2
def func():
print("hello")
class Test():
def __init__(self):
self.A = 0
self.B = "你好"
self.C = func
if __name__ == "__main__":
Test1 = Test()
print(getattr(Test1,"C"))
hasattr () 函数检查属性是否存在。
object
– 对象。
name
– 字符串,属性名。
eval(expression)表达式执行
Type()函数,对数据类型进行判断
持续更新中