names = ['sd','sdf','xiaos','sde'] result= ','.join(names) print(result) #sd,sdf,xiaos,sde result= '**'.join(names) print(result) #sd**sdf**xiaos**sde #练习:将nums中所有的元素拼接成一个数字 nums = [10,45,24,9] result= ''.join([str(x) for x in nums]) print(result) #1045249 #练习:拼最后一个数字 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 = 'abc123def123fed123努哈'
result = str1.split('123')
print(result) #['abc', 'def', 'fed', '努哈']
3、字符串替换
字符串1.replace(字符串2,字符串3) - 将字符串1中所有的字符串2都替换成字符串3
字符串1.replace(字符串2,字符串3,n) -将字符串1中前n个字符串2都替换成字符串3
str1 = 'abc123def123fed123123努哈'
result = str1.replace('123','xu')
print(result) #abcxudefxufedxuxu努哈
4、字符串.strip() - 去掉字符串前后的所有的空白字符,字符串中间的空白去不了
str1 = 'nnt abc 123 nnn' print(str1.strip()) #abc 123二、函数的基础 1、函数的概念(相当于生活中的机器)
函数就是实现某一特定功能的代码的封装
函数就是提前将实现某一个功能的代码封装起来,以后再需要,这段代码对应的功能的时候,就不用再重复写这段代码,而是调用封装这个代码对应的函数
2、函数的分类系统函数(别人已经造好的机器) - python自带的函数 例如:print input max min
自定义函数:程序员自己创建的函数
三、定义函数和调用函数 1、定义(创建)函数def 函数名(形参列表):
函数说明文档
函数体
-
说明:
def - 关键字,固定写法
函数名 - 由程序员命名,是标识符但不能是关键字,而且要见名知义
(): - 固定写法
形参列表 - 以’变量名1,变量名2,…'的形式存在,这儿的变量可以一个都没有,也可以有多个
(一个变量就是一个行参)
行参的作用:将函数外部的数据传递到函数里面
什么时候需要行参:看实现函数的功能需不需要额外的数据,需要几个.需要一个额外的数据就提供一个行参
行参怎么使用:在函数体中直接将行参当成我们需要的数据来使用
函数说明文档 - 多行注释
函数体 - 结构上:就是个def保持一个缩进的一条或者多条语句(至少一条)
逻辑上:函数体就是实现函数功能的代码
#练习1:定义一个函数,判断指定的数是否是水仙花数 def is_narcissistic_number(num): if len(str(num)) != 3: print('不是水仙花数') 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('是水仙花数') else: print('不是水仙花数') is_narcissistic_number(207) #练习2:定义一个函数,判断指定字符串是否是纯中文字符串 def str1(str2): for x in str2: if not 'u4e00' <= x <= 'u9fa5' : print('非纯中文') break else: print('纯中文') str1('谁456') #练习3:定义一个函数,统计一个字符串中大写字母的个数 def count_upper(str1): count = 0 for x in str1: if 'A'<=x <='Z': #x.isupper(): count +=1 print(count) count_upper('asdfgrdc') #练习4:定义一个函数,统计指定字符串中指定字符的个数 def count_char(str1,char1): count = 0 for x in str1: if x == char1 : count += 1 print(count) count_char('asdfgrdc','s')
语法: 函数名(实参列表)
-
说明:
函数名 - 需要哪个函数的功能就调用哪个函数的,想要调用哪个函数就写哪个函数的函数名 (函数必须先定义再调用) () - 固定写法 实参列表 - 以'数据1,数据2,...'的形式存在 实参就是通过行参传递到函数中的数据。(实参就是用来给行参赋值的) 实参的个数由行参决定(实参和行参一一对应) 注意:一个函数可以调用多次,并且每次调用的时候都可以给不同的实参 -
函数调用的过程
重要结论:定义函数的时候不会执行函数体,调用函数的时候才会执行
第一步:回到函数定义的位置
第二步:传参(用实参给行参赋值)
第三步:执行函数体
第四步:确定函数返回值
第五步:回到函数调用的位置,接着往后执行



