python

用递归函数计算n的阶层

python 复制代码
def fac(n):
    if n==1:
        return 1
    else:
        return n*fac(n-1)

print(fac(5))

斐波那契函数

python 复制代码
def fac(n):
    if n==1 or n==2:
        return 1
    else:
        return fac(n-1)+fac(n-2)
print(fac(9))

for i in range(1,10):
    print(fac(i),end='\t')
print()#这一个不能与前一个print对齐
#结果为:1	1	2	3	5	8	13	21	34

常用的数据类型转化函数

bool------跟0有关的还有空的类型布尔值都是False

python 复制代码
print('绝对值:',abs(100),abs(-100),abs(0))
print('商和余数:',divmod(13,4))
print('最大值:',max('hello'))
print('最大值:',max([10,4,56,78,4]))
print('最小值:',min('hello'))
print('最小值:',min([10,4,56,78,4]))

print('求和',sum([10,34,45]))
print('x的y次幂:',pow(2,3))

print(round(3.1415926))#3
print(round(3.9415926))#4
print(round(3.1415926,2))#2表示保留两位小数
print(round(313.415926,-1))#-1位,个数进行四舍五入
python 复制代码
lst=[54,56,77,4,56,34]
#(1)排序操作
asc_lst=sorted(lst)#升序
desc_lst=sorted(lst,reverse=True)#降序
print('原列表:',lst)
print('升序:',asc_lst)
print('降序:',desc_lst)

#(2)reversed 逆序
new_lst=reversed(lst)
print(type(new_lst))#class 'list_reverseiterator'>迭代器对象
print(list(new_lst))

#(3)zip
x=['a','b','c','d']
y=[10,20,30,40,50]
zipobj=zip(x,y)
print(type(zipobj))#<class'zip'>
#print(list(zipobj))#[('a', 10), ('b', 20), ('c', 30), ('d', 40)]
#为元组

#(4)enumerate
enum=enumerate(y,start=1)
print(type(enum))
print(tuple(enum))

#(5)all
lst2=[10,20,30,'']
print(all(lst2))#False,只要有空字符串就位False
print(all(lst))#True

print('-'*20)
#(6)any
print(any(lst2))#True,列表元素的所有值都为False的时候为False

#(7)
#运行时需要将19行的代码注释掉
print(next(zipobj))#('a', 10)
print(next(zipobj))#('b', 20)
print(next(zipobj))#('c', 30)
#运行一次获取一次

def fun(num):
    return num%2==1
obj=filter(fun,range(10))#将range中产生的0~9的数字都执行一遍fun操作
print(list(obj))
#[1, 3, 5, 7, 9]#得到的是奇数

def upper(x):
    return x.upper()

new_lst2=['hello','world','python']
obj2=map(upper,new_lst2)
print(list(obj2))
#['HELLO', 'WORLD', 'PYTHON']
#可以像这样用函数代替遍历循环
python 复制代码
print(format(3.14,'20'))#数值默认右对齐
print(format('hello','20'))#字符串默认左对齐
print(format('hello','*<20'))
print(format('hello','*>20'))
print(format('hello','*^20'))


print(format(3.1415926,'2f'))
print(format(20,'b'))
print(format(20,'o'))
print(format(20,'x'))
print(format(20,'X'))

print('-'*40)
print(id(10))
print(id('helloworld'))
print(type('hello'),type(10))

print(eval('10+30'))
print(eval('10>30'))#False
相关推荐
qq59184068513 分钟前
uiautomator2自动化安卓手机操作
python
80s7771 小时前
动态代理和静态代理的区别,动态代理怎么提高网络安全性
python
浪子明X1 小时前
十六位账本怎样发现传输差错:Internet Checksum 生活类比
开发语言
niucloud-admin2 小时前
JAVA V6 多商户商城 开发文档——job 计划任务开发
java·python·github
小叶肥辉3 小时前
LangChain链和LangGraph图的学习笔记【三】——分别用langchain_openai库和langchain_community库调用大模型
笔记·python·langchain
2401_873479403 小时前
IP属地为什么有时显示外省?用IP查询工具核查动态分配、运营商出口与GeoIP库
python·tcp/ip·ip
xiangyun614 小时前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun614 小时前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
OKkankan5 小时前
LangChain 能力详解!:输出解析、RAG、向量数据库与 Retriever 检索器
数据结构·python·langchain·ai应用
白远山5 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析