python09day
内容回顾
文件操作初识
三步走:
- 打开文件open()
- 文件路径path,编码方式encoding=,mode(默认读)
- 操作文件(对文件句柄进行操作)
- 读、写、追加
- 各四种模式
- 读:read()、read(n)、readline()返回字符串、readlines()返回列表、for循环
- 写:没文件创建新文件写入,有文件清空再写入
- 追加:没文件创建新文件追加内容,有文件直接追加
- r+:先读后写
- 其他功能:
- tell()找光标位置
- seek()调整光标位置
- flush()强制刷新
- with open() as f1:
- 文件的改操作
- 关闭文件。
- 打开文件open()
练习题
#以a+模式打开文件,先追加一行:'汤达人最帅',然后再从最开始将原内容全部读取出来
with open('练习文件',encoding='utf-8',mode='a+')as f1:
f1.write('汤达人最帅')
f1.seek(0)
content=f1.read()
print(content[:-5])
#通过代码,将a.txt其构建成:[{'name': 'apple', 'price': '10', 'amount': 3}, {'name': 'tesla', 'price': '100000', 'amount': 1}, {'name': 'mac', 'price': '3000', 'amount': 2}, {'name': 'lenovo', 'price': '30000', 'amount': 3}, {'name': 'chicken', 'price': '10', 'amount': 3}]
#
l1=[]
with open('a',encoding='utf-8')as f1:
for line in f1:
dic={}
# print(line,type(line))
line=line.strip() #apple 10 3
line_list=line.split()
print(line_list)
dic['name']=line_list[0]
dic['price']=line_list[1]
dic['amount']=int(line_list[2])
l1.append(dic)
print(l1)
今日内容
函数的初识
- 函数:以功能(完成一件事)为导向,登录,注册,len,一个函数就是一个功能,随调随用
- 减少代码重复性
- 增强代码可读性
def meet():
print('打开抖音')
print('上滑一下')
print('下滑一下')
print('找风景')
print('点赞')
print('走起')
'''
结构:def关键字,定义函数
meet函数名:与变量设置相同,具有可描述性
函数体:缩进。函数中尽量不要出现print
''' #函数什么时候执行?
#当函数遇到 函数名() 函数才会执行
meet()
函数的结构与调用
函数的结构
def 函数名(): 函数体
- 调用一次执行一次
函数的返回值
- 完成功能后返回的状态
- return
- 在函数中,终止函数
- return可以给函数的执行者返回值
- return 单个值
- return 多个值 元组
函数的参数
函数执行时写的参数:实参
- 实参角度:
- 1.位置参数:几个位置,几个参数,一一对应
- 2.关键字参数:在执行时使用(形参名='实参')等形式,不需要按照顺序
- 实参角度:
函数定义中写的参数:形参
- 形参角度
- 1.位置参数
- 2.默认值参数:设定完不改就设置为默认值,在写函数时,在形参部分就定义了默认值,默认值参数必须放在所有参数最后。
- 形参角度
三元与运算符:简单的if else
c=a if a>b else b
今日总结
1.函数:
函数的作用:以功能为导向,减少代码重复,增强可读性
函数的结构:函数的执行
函数的返回值
函数的参数:实参角度、形参角度
代码总行数1591+46=1637行
python09day的更多相关文章
随机推荐
- 【LeetCode】561. Array Partition I 解题报告(Java & Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 排序 日期 题目地址:https://leetcod ...
- 【LeetCode】384. Shuffle an Array 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 库函数 Fisher–Yates 洗牌 水塘抽样 日 ...
- 【机器学*】k*邻算法-01
k临*算法(解决分类问题): 已知数据集,以及该数据对应类型 给出一个数据x,在已知数据集中选择最接*x的k条数据,根据这k条数据的类型判断x的类型 具体实现: from numpy import * ...
- 第四十五个知识点:描述一些对抗RSA侧信道攻击的基础防御方法
第四十五个知识点:描述一些对抗RSA侧信道攻击的基础防御方法 原文地址:http://bristolcrypto.blogspot.com/2015/08/52-things-number-45-de ...
- Java调用Azkaban的RestFul接口
1.绕过ssl认证的工具类: import java.security.KeyManagementException; import java.security.NoSuchAlgorithmExce ...
- [炼丹术]YOLOv5训练自定义数据集
YOLOv5训练自定义数据 一.开始之前的准备工作 克隆 repo 并在Python>=3.6.0环境中安装requirements.txt,包括PyTorch>=1.7.模型和数据集会从 ...
- PostgreSQL客户端psql常用命令
使用psql客户端访问数据库, 列出了psql常用命令和参数. 常用命令 -- 使用指定用户和IP端口登陆 psql -h 10.43.159.11 -p 5432 -U postgres -W -- ...
- javascript实现base64格式转码与解码
最近碰到一个需求,后端返回base64格式的数据,前端需要进行base64格式解码,好了,前端采用内部提供的atob函数进行解码,开完成,交付测试,然后测试小哥哥小姐姐反馈说中文乱码! 然后查了一下, ...
- JUC之多线程锁问题
多线程锁 8种问题锁状态: 该部分全部围绕的是以下内容并结合相应的例子:synchronized实现同步的基础:Java中每个对象都可以作为锁. 具体表现为以下三种形式:(之前只是简单的了解) 对于普 ...
- Flink sql 之 两阶段聚合与 TwoStageOptimizedAggregateRule(源码分析)
本文源码基于flink1.14 上一篇文章分析了<flink的minibatch微批处理>的源码 乘热打铁分析一下两阶段聚合的源码,因为使用两阶段要先开启minibatch,至于为什么后面 ...