栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Day11-函数基础

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Day11-函数基础

Day11-函数基础 备注:1、字符串.join(序列) - 用指定的字符串将序列中的元素拼接成一个新的字符串(序列中的元素必须全部都是字符串)

​ 例如:

names = [‘小明’, ‘小红’, ‘小花’, ‘张三’]

‘小明,小红,小花,张三’

result = ‘,’.join(names)

print(result) ‘小明,小红,小花,张三’

‘小明+小红+小花+张三’

result = ‘+’.join(names)
print(result)

‘小明and小红and小花and张三’

result = ‘and’.join(names)
print(result)

result = ‘’.join(‘abc’)
print(result) ‘abc’

练习:将nums中所有的元素拼接成一个数字

nums = [10, 45, 78, 9] # -> ‘1045789’

-> [‘10’, ‘45’, ‘78’, ‘9’]

result = ‘’.join([str(x) for x in nums])
print(result)

nums = [10, 45, 78, 9] # -> ‘0589’

[‘0’, ‘5’, ‘8’, ‘9’]

result = ‘’.join([str(x)[-1] for x in nums])
print(result)

2、字符串切割 字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串1进行切割 字符串1.split(字符串2,N) - 将字符串1前N个字符串2作为切割点对字符串1进行切割

str1 = ‘abc123mn123oop123你好’
result = str1.split(‘123’)
print(result) [‘abc’, ‘mn’, ‘oop’, ‘你好’]

如果切割点连续出现,或者切割点在字符串开头或结尾,切割的时候会出现空串

str2 = ‘123abc123123mn123oop123你好123’
result = str2.split(‘123’)
print(result) [‘’, ‘abc’, ‘’, ‘mn’, ‘oop’, ‘你好’, ‘’]

str1 = ‘abc123mn123oop123你好’
result = str1.split(‘123’, 2)
print(result) [‘abc’, ‘mn’, ‘oop123你好’]

3、字符串替换 字符串1.replace(字符串2,字符串3) - 将字符串1中所有的字符串2都替换成字符串3 字符串1.replace(字符串2,字符串3,N) - 将字符串1中前N个字符串2都替换成字符串3

str1 = ‘abc123mn123oop123你好’
result = str1.replace(‘123’, ‘XY’)
print(result) ‘abcXYmnXYoopXY你好’

4、字符串.strip( ) - 去掉字符串前后的所有的空白字符

str1 = ‘nnt 肖生克 的救 赎 nnn’
print(str1.strip())


1、认识函数 函数的概念 - 函数就是实现某一特定功能的代码的封装 (函数就是提前将实现某一个功能的代码封装起来,以后再需要这段代码对应的功能的时候就不应再重复去写中这段代码,而是调用相对应的函数)

def yt_max(seq):
m = seq[0]
for x in seq[1:]:
if x > m:
m = x
print(m)

nums1 = [19, 239, 78, 3]
yt_max(nums1)

m = nums1[0]

for x in nums1[1:]:

if x > m:

m = x

print(m)
nums2 = (78, 2, 612, 9, 23)
yt_max(nums2)

m = nums2[0]

for x in nums2[1:]:

if x > m:

m = x

print(m)

函数的分类 - 按照函数是由谁创建(定义)的可以将函数分为。系统函数和自定义函数 系统函数 - Python自带的函数 自定义函数 - 由程序猿自己创建的函数
2、定义函数 01)语法: def 函数名(形参列表): 函数说明文档 函数体 02)说明 def - 关键字,固定写法 函数名 - 由程序猿命名 要求:是标识符,不是关键字 规范:见名知义(看到函数大概知道这个函数的功能);字母都i小写,多个单词用_隔开;不使用系统函数名、类名或者模块名 ( ): - 固定写法 形参列表 - 以’变量名1,变量名2,变量名3,…‘的形式存在,这儿的变量可以一个都没有,也可以有多个(一个变量就是一个形参)形参的作用:将函数外部的数据传递到函数里面 实现函数的功能需不需要额外的数据,需要一个额外的数据就提供一个形参;在函数体中直接将形参当成我们需要的数据来使用 函数说明文档 - 本质就是多行注释(相当于机器的说明书) 函数体 - 结构上就是和def保持一个缩进的一条或者多条语句(至少一条)逻辑上,函数体就是实现函数功能的代码
# 案例1:定义一个函数,求任何两个数的和
def sum2(num1, num2):
    """
    求任意两个数的和(功能说明区)
    :param num1: (参数说明)
    :param num2: 
    :return: (返回值说明区)
    """
    print(num1 +num2 )

练习1:定义一个函数,判断指定的数是否是水仙花数

def is_narcissistic_number(num):
if len(str(num)) != 3:
print(False)
else:
num_str = str(num)
ge = num % 10 ge = int(num_str[-1])
shi = num // 10 % 10 shi = int(num_str[-2])
bai = num // 100 bai = int(num_str[-3])
if ge ** 3 + shi ** 3 + bai ** 3 == num:
print(True)
else:
print(False)

is_narcissistic_number(150)

练习2:定义一个函数,判断指定字符串是否是纯中文字符串

def is_chinese_str(str1):
for x in str1:
if not ‘u4e00’ <= x <= ‘u9fa5’:
print(False)
break
else:
print(True)

is_chinese_str(‘黑色金属’)

练习3:定义一个函数,统计一个字符串中大写字母的个数

def count_upper(str1):
count = 0
for x in str1:
if x.isupper(): ‘A’ <= x <= ‘Z’
count += 1
print(count)

count_upper(‘aKOhjs计JK算机课’)

练习4:定义一个函数,统计字符串中指定字符的个数

def count_char(str1, char):
count = 0
for x in str1:
if x == char:
count += 1
print(count)

count_char(‘ahjsjjsjah’, ‘j’)

3、调用函数 语法: 函数名(实参列表) 说明 函数名 - 需要哪个函数的功能就调用哪个函数,想要调用哪个函数就写哪个函数的函数名(函数名需要先定义再调用) ( ) - 固定写法 实参列表 - 以’数据1,数据2,数据3,…‘的形式存在,实参就是通过形参传递到函数中的数据(实参就是用来给形参赋值的)实参的个数由形参决定,实参和形参必须一一对应 注意:一个函数可以调用多次,并且每次调用的时候都可以给不同的实参 函数调用过程 重要结论:定义函数的时候不会执行函数体。调用函数的时候才会执行 函数调用过程: 第一步:回到函数定义的位置 第二步:传参(用实参给形参赋值) 第三步:执行函数体 第四步:确定函数返回值 第五步:回到函数调用的位置,接着往后执行

def func1(a, b, c):
a = 10; b = 20; c = 30
a = 100; b = 200; c = 300
print(‘===========’)
print(f’a:{a}, b:{b}, c:{c}')

func1(10, 20, 30)
func1(100, 200, 300)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/953769.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号