python基础知识(九)

递归函数
条件:
1)函数自己调用自己
2)函数调用必须有退出
eg:

def hanshu(x):
    print(x)
    if x==1:
        return
    hanshu(x-1)
    print("-------")

hanshu(4)

结果为:
在这里插入图片描述
阶乘
eg:求10!

def jiecheng(x):
    if x==1:
        return 1
    a = jiecheng(x-1)
    return a*x
s = jiecheng(10)
print(s)

结果为:3628800
斐波那契数列
eg:前两个数相加等于第三个数。

def feibo(x):
    a = 1
    b = 1
    while x > 0:
        print(b,end=" ")
        a,b = b,a+b
        x = x-1

feibo(10)

结果为:
在这里插入图片描述
字符串
字符串是有序序列 可以通过下标进行访问
字符串一但定义 不能进行修改 注意:字符串是不可变类型数据
可以通过索引获取字符

a = "hello"
b = a[-4]
print(b)

结果为:e
字符串切片
格式 [起始索引:结束索引:[步长]]
注意:切片 包含头 不包含尾 (结束索引-1)
eg:

s = "hello world"
s1 = s[3:7]
print(s1)

结果为:
在这里插入图片描述
起始索引 和 结束索引为负值
eg:

s = "hello world"
s1 = s[-8:5]                              # 从后往前开始数,然后从前往后截取
print(s1)

结果为:lo
字符串遍历
eg:

name = "Hello_Mike"
for i in name:
    print("%s"%i,end=" ")
else:
    print("执行完了。。。")

结果为:
在这里插入图片描述
字符串函数: find rfind index rindex count()
find() 查找某个字符是否在字符串 中 如果有就返回第一次出现的下标 没有返回 -1
rfind() 返回从右边第一个指定字符的索引 没有返回 -1
index() 返回下标 没有找到 就报错
rindex() 返回从右边第一个指定字符的索引 没有就报错
count() 计数功能,返回指定字符在字符串中出现的个数
字符串的拆分: partition splite splitlines
split 以指定的字符切割将 字符串 分割成若个字符串 返回 列表 maxsplite 指定最大切割次数
partition 指定某个字符, 将整个字符串以字符为准 分割成3部分
splitlines 按照行分割 参数是True保留换行符 False不保留
字符串的替换: replace translate
replace 指定字符 更换新的字符 第一个参数 被替换的字符 第二个被换成字符 第三 最大替换个数
translate 按照对应关系来进行替换内容
填充与 格式化
< 左对齐 ^ 居中对齐 > 向右对齐 默认是填充空格

print("我叫{:*^4},我喜欢吃{:¥>5},我今年{:@<7}岁了。".format("阿衰","臭豆腐",9))

结果为:
在这里插入图片描述
精度与进制
{:.3f} 表示保留3位小数 {:.2f} 保留两位小数

print("长方形的长是{:.3f}cm,宽是{:.2f},求面积".format(5/3,7/2))

print("二进制{:b}".format(10))
print("八进制{:o}".format(10))
print("十六进制{:x}".format(10))

结果为:
在这里插入图片描述
字符串变形: upper lower capitalize title swapcase expandtabs
\t 空格符
eg:

s1 ="One world\tone Dream"
print(s1.upper())  #upper 把所有的小写字母转大写
print(s1.lower())    # lower 把所有的大写字母转小写
print(s1.capitalize()) #字符串首字母大写
print(s1.title()) # 单词首字母大写
print(s1.swapcase()) # 将字符串中大写换小写,,小写换大写
print(s1.expandtabs())  # 把\t转换成空格符

结果为:
在这里插入图片描述
字符串判断
eg:

sm = "pull urself together"
print(sm.isalnum()) #判断字符串是否完全由字母或者数字组成
print(sm.isalpha()) #判断字符串是否全由字母组成
print(sm.istitle()) # 判断字符串是否满足title格式
print(sm.isdigit()) # 判断是否全由数字组成
print(sm.isupper())   #判断是否全是大写字母
print(sm.islower())    #判断是否全由小写字母组成
print(sm.isspace())    #判断字符串是否完全由空格

结果为:
在这里插入图片描述
继续加油哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值