01 昨日内容回顾
文件操作
文件操作的流程:
1,打开文件创建文件句柄。
2,对文件句柄进行操作。
3,关闭文件句柄。
读,
r r+ rb r+b
read() 全部读取
read(n) 读取一部分
r模式下:n 字符。
rb模式下:n 字节。
readline() 按行读取。
readlines() 返回个列表,列表中的每个元素是文件的每一行。
for 循环。

w w+ wb w+b
如果没有文件,创建文件写入内容
如果有文件,清空内容,写入新内容。

追加
a a+ ab a+b
如果没有文件,创建文件写入内容
如果有文件,在文件的最后追加新内容。

带b的模式:操作的非文本类的文件。

其他操作方法: readable() writable() seek() tell() flush() truncate()

文件操作的改:
1,以读的方式打来原文件。
2,以写的方式打开新文件。
3,将原文件内容读取出来,修改成新内容写入新文件。
4,删掉原文件。
5,将新文件重命名成原文件。

02 作业讲解
03 函数的初识
什么是函数? 一个函数封装一个功能。
1,减少重复代码。
2,增加代码的可读性。
函数的结构
def 函数名():
函数体
函数的返回值

函数的参数

# 03 函数# 函数:一个函数是封装一个功能。#   why ?#不用;len()计数# str1 = 'ifodsafpoewk'# count = 0# for i in str1:#     count +=1# print(count)

# 面向过程编程:# 1,代码重复性多。# 2,代码的可读性差。

# 函数式编程:# len()

# 函数:一个函数是封装一个功能。# str1 = 'ifodsafpoewk'# def len1():#     count = 0#     for i in str1:#         count +=1#     print(count)# len1()

# print('打开探探')# print('附近的人')# print('左滑一下')# print('右滑一下')# print('锁定目标,联系')# print('相约...')

# 上面重复代码较多,要整合到一个函数中

# 1,函数的基本结构# def date():#     print('打开探探')#     print('附近的人')#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')# date()# date()  # 函数的执行者(调用者)

#   return使用'''1, 函数中遇到return直接结束。2,return 给函数的执行者(调用者)返回值:        单独return 返回None        return 单个值  ----> 单个值(数据类型不变)        return 多个值  ----> 返回一个元组(多个值...)'''# def date():#     print('打开探探')#     print('附近的人')#     print('左滑一下')#     print('右滑一下')#     return  # return 直接结束函数。#     print('锁定目标,联系')#     print('相约...')# date()# print(666)

# 返回单个值# def date():#     print('打开探探')#     print('附近的人')#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')#     # return '美女'#     return ['1', 100]# print(date(),type(date()))

#返回多个值# def date():#     print('打开探探')#     print('附近的人')#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')#     return ['广西','南宁','柳州']# print(date(),type(date()))## morning,afternoon,night = date()###数量要对应morning->'广西'# print(morning)#结果:广西# print(afternoon)#结果:南宁# print(night)

# 04 函数的参数# 形参:形式参数

# def date(a,b):#     print(a,b)#     print('打开探探')#     print('附近的人')#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')# x = 3# y = 6# date(x,y)# 函数的执行者:实参,实际的参数

# 实参:实际的参数# 位置参数: 必须与形参角度的位置参数 从左至右一一对应# def date(sex,position):#     print('打开探探')#     print('%s附近的%s'%(position,sex))#     print('左滑下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')# date('女性','深圳')

# 写一个函数,完成一个功能: 给函数传入两个数字对象,将较大的数字返回给函数的调用者# def max1(a,b):#     if a > b:#         return a#     else:#         return b# print(max1(55,66))

#三元运算符:# if 3 > 2:#     ret = 666# else:#     ret = 333# print(ret)#转化为以下# ret = 555 if 3 > 2 else 444# print(ret)

# 关键字参数:一一对应,可以不按顺序# def date(sex,positon,soft):#     print('打开手机')#     print('打开%s软件,搜索%s附近的%s' % (soft, positon, sex))#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')# date(soft='微信',sex='girl',positon='深圳南山区')

# 混合参数 (位置参数,关键字参数)# 注意: 位置参数一定要在关键字参数前面。# # def date(meetplace,sex,positon,soft):#     print('打开手机')#     print('打开%s软件,搜索%s附近的%s' % (soft, positon, sex))#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约%s' %(meetplace))# date('酒吧',soft='微信',sex='girl',positon='深圳南山区')

'''实参角度:    1, 位置参数,从左至右一一对应。    2,关键字参数,一一对应,顺序随便。    3,混合参数。 位置参数一定要在关键字参数前面。'''

#形参角度:# 1, 位置参数 与实参角度的位置参数一样,从左至右,一一对应。# def date(sex,positon):#     print('打开探探')#     print('%s附近的%s' % (positon, sex))#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约...')# date('女性', '深圳',)

# 2,默认参数:给形参设置默认值,通常是常用的数值,但是可以更改。# 注意:默认参数一定要在位置参数后面# def date(meetplace,positon,soft,sex='girl'):#     print('打开手机')#     print('打开%s软件,搜索%s附近的%s' % (soft, positon, sex))#     print('左滑一下')#     print('右滑一下')#     print('锁定目标,联系')#     print('相约%s' %(meetplace))# date('酒吧',soft='微信',positon='深圳南山区',sex='laddyboy')#不写sex默认为girl

# 默认参数陷阱# 默认参数指向的是一个容器型数据类型,那么这个数据在内存中永远是同一个# def func1(a,l=[]):#     l.append(a)#     return l# print(func1(666))  # [666]# print(func1(22))   # [666,22]# print(func1(33,[]))  # [33]

# 万能参数 :两个形参参数,接受我所有的位置参数,关键字参数# def date(*args, **kwargs):#     print(args)#     print(kwargs)# date('南山区','18~30','24',positon='深圳南山区',sex='laddyboy')

'''形参角度:    1,位置参数,从左至右,一一对应。    2,默认参数,放在位置参数后面。    3,万能参数:接受实参角度所有的位置参数,关键字参数。'''

day08_python_1124的更多相关文章

随机推荐

  1. 腾讯云主机及CentOS7.2简单上手体验

    前段时间拜读了崔庆才老师的<Python③网络爬虫开发实战>受益良多,对于初学爬虫的新手来说,本书真可谓是通俗易懂,非常适合新手入门.但是受制于没有服务器环境,书中很多例子难以模拟!最近正 ...

  2. OAuth2认证和授权入门

    OAuth2四种授权方式 四种授权方式 OAuth 2.0定义了四种授权方式. 密码模式(resource owner password credentials) 授权码模式(authorizatio ...

  3. db2空值、null

    1. 输入参数为字符类型,且允许为空的,可以使用COALESCE(inputParameter,'')把NULL转换成''; 2. 输入类型为整型,且允许为空的,可以使用COALESCE(inputP ...

  4. JaCoCo在Tomcat服务器上监控代码覆盖率的使用方法

    简介 Jacoco是一个开源的覆盖率工具.Jacoco可以嵌入到Ant .Maven中,并提供了EclEmma Eclipse插件,也可以使用JavaAgent技术监控Java程序.很多第三方的工具提 ...

  5. CentOS 7 通过SQLmap进行SQL注入

    安装SQLmap: IP:192.168.94.11 渗透测试演练系统DVWA: IP:192.168.94.111 通过SQLmap检测SQL注入漏洞 : 1.安装SQLmap漏洞查看工具 2.安装 ...

  6. C#-----中使用using详解

    1.using指令 using + 命名空间名字 例:using System;        using System.Data; 2.using语句 定义一个范围,在范围结束时处理对象,出了这个范 ...

  7. Java代码质量改进之:同步对象的选择

    在Java中,让线程同步的一种方式是使用synchronized关键字,它可以被用来修饰一段代码块,如下: synchronized(被锁的同步对象) { // 代码块:业务代码 } 当synchro ...

  8. noip单词接龙

    看了许多题解都好长啊,自不量力的来贴一下代码 (震惊于这都能ac...) 这道题的思路是先从字符串中找有重部分然后直接比较剩下的部分,比较的数据也可以用来计算数值 其实满水的题 总之看注释啦(竟然能耐 ...

  9. spring-boot 根据环境启动

    spring-boot 根据环境启动: java -jar spring-boot--config--SNAPSHOT.jar --spring.profiles.active=prod

  10. java输入输出流(I/O)总结

    io流的 四个基本类 java.io包中包含了流式I/O所需要的所有类.在java.io包中有四个基本类:InputStream.OutputStream及Reader.Writer类,它们分别处理字 ...