python函数与字符串

"""
    字符串的常用方法(函数)API
    str:字符串
"""
str_test = " I Love Python "
#1.swapCase:大转小 小转大
print(str_test.swapcase())

#2.去除两端空格
print(str_test.strip())

#3.判断以什么开头,判断以什么结尾
str_test = "www.baidu.com"
print(str_test.startswith("www"))
print(str_test.endswith("com"))

#4.partition将参数的左边和右边分割,分成三个元素的元组
str_res  = str_test.partition("baidu")
print(str_res)

#5.maketrans 建立映射规则
str1 = "abcde"
str2 = "12345"
res = str.maketrans(str1,str2)
#{97: 49, 98: 50, 99: 51, 100: 52, 101: 53}
print(res)
#translate根据映射规则替换字符串内容
str3 = "This is a Python Programming Expression,abcd"
print(str3.translate(res))
#This is 1 Python Progr1mming Expr5ssion,1234

#课堂练习:计算多项式1+11+111+1111...+n个1的和,使用字符串完成
def sum(n):
    result = 0
    num = '1'
    for i in range(n):
        result += int(num)
        num += '1' # 将字符串后面添加一个'1',相当于每次加上一个1、11、111...
    return result

n = int(input("请输入n的值:"))
print("多项式的和为:",sum(n))

"""
    函数的参数
        1.位置参数
            -普通参数
            -传递时符合参数位置及个数
        2.默认值参数(缺省参数)
            -默认参数即声明时,为参数指定默认值,在调用时可以不传参
        3.可变参数
            -格式: *参数名:个数不确定
            -会将可变参数打包成元组
        4.关键字参数
            -格式: **参数名:个数不确定,但传参数时,需要以变量名 = 值的形式传入
            -会将关键字参数打包成字典
        5.命名关键字参数
            -格式: * 可变参数 中间 **关键字参数 --写在可变参数之后
        重要问题:
            参数的定义顺序?
                位置参数 -> 默认参数 ->可变参数 ->命名关键字参数->关键字参数
            可变参数和关键字参数的打包和解包问题?
"""

def sum(x,y):
    return x / y

print(sum(10,20))#0.5
print(sum(20,10))#2.0


def f1(a,b = 0):
    print("a:",a,"b :",b)
f1(1)


#def f2(a,b = 0,*c):
def f2(a,b = 0,*args):
    print("a:",a,"b :",b,"args",args)#a: 10 b : 1 args (2, 3, 4, 5, 6) 
f2(10,1,2,3,4,5,6)

def f3(a,b = 0,*args,**kwords):
    print("a:",a,"b :",b,"args",args,"kwords:",kwords)
#a: 10 b : 1 args (2, 3, 4, 5, 6) kwords: {'name': 'zhangsan', 'age': 18, 'salary':10000.0}
f3(10,1,2,3,4,5,6, name = "zhangsan",age = 18,salary = 10000.0)


def f4(a,b = 0,*args,nickname,**kwords):
    print("a:",a,"b :",b,"args",args,"nickname:",nickname,"kwords:",kwords)#
f4(10,1,2,3,4,5,6,nickname="JeffLee", name = "zhangsan",age = 18,salary = 10000.0)
#a: 10 b : 1 args (2, 3, 4, 5, 6) nickname: JeffLee kwords: {'name': 'zhangsan', 'age': 18, 'salary': 10000.0}

#补充内容:当参数需要命名关键字参数,但不需要可变参数,根据命名关键数参数的特性,需要用*占用
def f5(a,*,name):
    print("a:",a,"name:",name)
f5(10,name = "zhangsan")
#a: 10 name: zhangsan
"""
函数的返回值
    1.
"""
def sum(x,y):
    z = x + y
    return z

#直接打印函数名称时,打印的是函数对象
print(sum)#<function sum at 0x0000019BB3698FE0>
#函数对象引用传递!调用时可以直接使用传递后的对象
sum_change = sum


print(sum(10,20))#30
print(sum_change(20,30))#50

#1.函数返回值
#return 立即结束函数返回被调处
def test1():
    return

#案例一:
age =18
def is_chengnian(age):
    if age >= 18:
        print("您已成年")
    else:
        print("可以进入")

is_chengnian(age)


#pass用法
def test2():
    pass #让函数结构完成,不出现编译错误
print(...)

#2.返回为容器
def test3():
    return [1,2,3,4]
print(test3())


#3.返回为对象
def test4():
    return range(1,10)
print(test4())

#返回值本身
def test5():
    return test5
print(test5())
test_change = test5()
print(test_change())#<function test5 at 0x000001B245F19440>

def test6():
    return 1,2,3,4
a,b,c,d = test6()
print(a)
print(b)
print(c)
print(d)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值