• day10.函数,函数的参数


    函数的思维导图:

    老师的笔记

    昨天内容概括

     1 #组长:默写统一交给组长
     2 #不建议看视频
     3 #上课敲过的所有的例子
     4     # 1.看一遍、看能不能看懂
     5     # 2.给每一道题起一个名字或者一句描述
     6     # 3.看着文字,是否能翻译出代码
     7     # 4.如果翻译不出来,就对照着看上课的代码,看看卡在哪句话
     8     # 5.再反复的记忆
     9 
    10 #多看博客
    11     #1.第一节函数课
    12     #2.第一节面向对象课
    13 
    14 # 4期
    15 # for while
    16 # 有想纯谈心的
    17 
    18 
    19 # 1.文件怎么读
    20 # for循环读
    21 # read(): 一次性读出来、或者是按单位读:r 按字符读,rb 按字节读
    22 #     #缺点:占内存
    23 # readline():一行一行的读
    24 #     #缺点:你不知道读到什么位置文件结束
    25 # readlines():一次性读出所有的行,以列表的形式显示
    26 #     #缺点:占内存
    27 # 2.光标的位置怎么移动
    28     # seek(0)  到开头
    29     # seek(0,2)到末尾
    30     # 跳到文件的指定位置:seek(n)
    31 #3.打开文件的几种模式
    32     #r/w/a
    33     #rb,wb,ab
    34 #4.文件怎么写
    35 #write()
    36 #write('第一行
    ')
    37 #write('第二行
    ')
    38 #write('第一行
    第二行
    ')
    39 
    40 # 1.会向文件中添加一行新内容
    41 # 2.会读文件,并且将读出的内容格式化
    42 # 3.会修改文件
    43   
    View Code

    文件操作拾遗(根据昨天的内容做的一些补充)

     1 #文件的修改
     2 # #1.创建一个新文件
     3 # f2 = open('原文件.bak','w',encoding='utf-8')
     4 # #2.把原来的文件中的内容读出来
     5 # f = open('原文件',encoding='utf-8')
     6 # old_content = f.read()  #'原来的内容
    '
     7 # #3.操作读出来的字符串,把字符串中的内容替换掉
     8 # new_content = old_content.replace('新','原来')
     9 # #4.把替换之后的内容写到新文件里
    10 # f2.write(new_content)
    11 # f.close()
    12 # f2.close()
    13 # # #5.删除原文件,新文件重命名成源文件的名字
    14 # import os   #os模块
    15 # os.remove('原文件')  #删除文件
    16 # os.rename('原文件.bak','原文件')  #重命名   #replace(‘老内容’,‘新内容’)
    17 
    18 #文件的删除
    19 # import os   #os模块
    20 # os.remove('原文件')  #删除文件
    21 
    22 # #1.创建一个新文件
    23 # f2 = open('原文件.bak','w',encoding='utf-8')
    24 # #2.把原来的文件中的内容读出来
    25 # f = open('原文件',encoding='utf-8')
    26 # for line in f:
    27 #     new_line = line.replace('原来','新')
    28 #     f2.write(new_line)
    29 # f.close()
    30 # f2.close()
    31 # import os
    32 # os.remove('原文件')
    33 # os.rename('原文件.bak','原文件')
    34 
    35 #进阶例子
    36 # #1.创建一个新文件
    37 # f2 = open('原文件.bak','w',encoding='utf-8')
    38 # #2.把原来的文件中的内容读出来
    39 # f = open('原文件',encoding='utf-8')
    40 # count = 0
    41 # for line in f:
    42 #     if '原来' in line and count == 0:
    43 #         new_line = line.replace('原来','新')
    44 #         f2.write(new_line)
    45 #         count = 1
    46 #     else:
    47 #         f2.write(line)
    48 # f.close()
    49 # f2.close()
    50 # import os
    51 # os.remove('原文件')
    52 # os.rename('原文件.bak','原文件')
    53 
    54 #with操作文件
    55 # f = open('原文件',encoding='utf-8')
    56 # content = f.read()
    57 # print(content)
    58 # f.close()
    59 
    60 # with open('原文件',encoding='utf-8') as f:
    61 #     # content = f.read()
    62 #     # print(content)
    63 #     for line in f:
    64 #         print(line.strip())
    65 
    66 with open('原文件',encoding='utf-8') as f,open('原文件.bak','w',encoding='utf-8') as f1:
    67     for line in f:
    68         new_line = line.replace('原来','')
    69         f1.write(new_line)
    70 import os
    71 os.remove('原文件')
    72 os.rename('原文件.bak','原文件')
    73 
    74 
    75 #修改文件
    76     #read()
    77     #for循环的形式逐行修改
    78     #只修改一行的内容,其他不变 —— 扩展例子
    79 #with语句 == 文件的打开和关闭
    80     #根据个人喜好
    View Code

    函数

     1 # len()
     2 # len([1,2,3,4,5,6])
     3 # len('金老板 is somebody')
     4 
     5 # l = [1,2,3,4,5,6]
     6 # count = 0
     7 # for i in l:
     8 #     count +=1
     9 # print(count)
    10 
    11 # s = '金老板 is somebody'
    12 # count = 0
    13 # for i in s:
    14 #     count +=1
    15 # print(count)
    16 
    17 #可读性差
    18 #重复的代码多
    19 
    20 #把代码装起来
    21 # def my_len():
    22 #     l = [1,2,3,4,5,6]
    23 #     count = 0
    24 #     for i in l:
    25 #         count +=1
    26 #     print(count)
    27 #
    28 # # print(my_len)
    29 # my_len()
    30 
    31 
    32 #len()
    33 # l_len = len([1,2,3,4])
    34 #写函数的时候,要尽量以功能为导向,结果最好不要直接在函数中打印
    35 # def my_len():      #函数名的定义
    36 #     l = [1,2,3,4,5,6]
    37 #     count = 0
    38 #     for i in l:
    39 #         count +=1
    40 #     return count     #函数的返回值
    41 #
    42 # ret = my_len()     #函数的调用  以及 返回值的接收
    43 # print(ret)
    44 # my_len()
    45 
    46 
    47 #函数的返回值
    48     #没有返回值
    49     #返回一个值
    50     #
    51 
    52 def 函数名():
    53     for i in range(10):
    54         if i%3 == 0:
    55             print(i)
    56             return {'a':'b'},2
    57         print(i)
    58 
    59 
    60 ret,ret2,ret3 = 函数名()
    61 print(ret)
    62 print(ret2)
    63 
    64 #返回值:
    65 # 没有返回值:
    66     # 不写return  == return None
    67     # 只写一个return  == return None
    68     #  return的作用:1.返回一个值 2.终止一个函数的继续
    69 
    70 # 返回一个值: 可以返回任意的数据类型。返回什么 就接受什么
    71 
    72 # 返回多个值:
    73 #   用一个变量接收返回值,接收到的是一个元组
    74 #   返回值有多个变量接收,那么返回值的个数应该和接收变量的个数完全一致
    View Code

    函数的参数

     1 def my_len(lst):    #参数:接收参数,形式参数,形参
     2     count = 0
     3     for i in lst:
     4         count += 1
     5     return count
     6 
     7 
     8 l = [1, 2, 3, 4]  # 参数:传参数/传参,实际参数,实参l = [1,2,3,4]
     9 len_count = my_len(l)
    10 # print(len_count)
    11 # len_count2 = my_len('金老板 is somebody')
    12 # print(len_count2)
    13 
    14 # 练习
    15 # 写一个函数,接收参数一个列表或者字符串,
    16 # 如果这个列表或者字符串的长度大于2,返回True,否则返回False
    17 # def func(s_l):
    18 #    if len(s_l) > 2:
    19 #        return True
    20 #    else:
    21 #        return False
    22 #
    23 # print(func([1,2,3,4]))
    24 # print(func('12'))
    25 
    26 
    27 # 参数
    28 # 形参和实参
    29 # 传参数可以传任意的数据类型,并且传什么,接受什么
    30 # 站在传参数的角度上看问题:一共有两种传参的方式
    31     # 第一种:按照位置传参数
    32     # 第二种:按照关键字传参数
    33 
    34 # def f(para):
    35 #     print(para)
    36 #
    37 # f(para = 1)
    38 
    39 
    40 #传多个参数:多个参数分别可以使用任意数据类型
    41 def f2(arg1,arg2,arg3):   #站在接受、形参的角度上:位置参数
    42     print(arg1)
    43     print(arg2,arg3)
    44 
    45 # f2('abc',arg1 = [1,23])
    46 # f2('abc',arg2 = [1,23])
    47 # f2(arg3 = 1,arg2 = 2,arg1 = 3)
    48 #按照关键字传参数和按照位置传参数是可以混用的
    49 #但是,首先传按位置的,再传按关键字的
    50 #按照位置传完该接受的参数只能接受一个值,不接受或者重复接收都不想
    51 
    52 #形参
    53 #位置参数
    54 #数量必须与实参数量一致  ==> 必须传的参数
    55 
    56 # def classmate(name,sex='男'):
    57 #     print('姓名:%s,性别%s'%(name,sex))
    58 #
    59 # classmate('尤悦')
    60 # classmate('曹超')
    61 # classmate('张建超')
    62 # classmate('晓梅','女')
    63 
    64 #默认参数:
    65 #默认参数 是可以不传的参数
    66 #在不传参数的情况下可以使用默认的值
    67 #如果传了,就会使用传的值
    68 
    69 #魔性的用法:默认参数尽量避免使用可变数据类型
    70 lst = []
    71 def func(l = lst):
    72     l.append(1)
    73     print(l)
    74 
    75 func()
    76 func()
    77 func()
    78 func()
    79 
    80 lst = []
    81 def func(l = lst):
    82     l.append(1)
    83     print(l)
    84 
    85 func([])
    86 func([])
    87 func([])
    88 func([])
    89 
    90 
    91 #敲例子
    92 #读博客
    93 #画思维导图
    94 #写博客
    95 #写作业
    View Code

  • 相关阅读:
    多线程---同步函数的锁是this(转载)
    函数
    流程控制
    基本语句和运算
    基本数据库类型
    迷宫问题
    Dungeon Master(逃脱大师)-BFS
    HTML元素常用属性整理
    Java_hutool 发起请求
    jQuery Autocomplete
  • 原文地址:https://www.cnblogs.com/2012-dream/p/7761713.html
Copyright © 2020-2023  润新知