一、文件操作(二)

1.1 利用with来打开文件

#  with  open   ,python 会自动关闭文件
with open('a.txt', encoding='utf-8') as f: # f 文件句柄
# 文件中没有空行,下面按行读是没问题,如果有空行就不能往下读
while True:
line = f.readline().strip()
if line:
print(line)
else:
break
# 如果是大文件的话,如下处理
for line in f:
line = line.strip()
if line:
print(line)

1.2 两个文件进行操作

# 两个文件操作
# 1.r模式打开a文件,w模式打开b文件
# 2.读取到a文件所有内容
# 3.把替换new_str写入b文件
# 4.把a文件删除掉,把b文件更名为a文件 import os with open('word.txt', encoding='utf-8') as fr, open('words.txt', 'w') as fn:
for line in fr:
line = line.strip()
if line:
new_line = line.replace('a', 'A')
fn.write(new_line+'\n')
os.remove('word.txt')
os.rename('words.txt', 'word.txt')

二、集合

# set 天生去重
l = [1, 2, 3, 2, 3, 4, 1, 5, 6]
# 定义set
set1 = {1, 2, 3, 2, 3, 4, 1}
set2 = set() # 定义空集合set
set3 = set(l) # 强制转为set集合 set3.add(1) # 新增元素
set3.remove(1) # 删除元素
set3.update(set2) # 把一个集合加入到另一个集合中
# 交集
print(set3.intersection(set1)) # 取交集 等同于 set3 & set1
print(set3 & set1)
# 并集
print(set3.union(set1))
print(set3 | set1)
# 差集
print(set3.difference(set1)) # 在一个集合中存在,在另一个集合中不存在。此语句中就是set3中存在,set1中不存在的
print(set3 - set1)
# 对称差集
print(set3.symmetric_difference(set1)) # 去掉两个集合交集之外的部分
print(set3 ^ set1) # 集合也可以循环
for s in set3:
print(s)

三、三元表达式、列表生成式

3.1 三元表达式

#  三元表达式
age = 18
# 原写法
if age < 18:
v = '未成年人'
else:
v = '成年人' # 三元表达式 写法 只能是if else可以用, 不能
v = '未成年人' if age < 18 else '成年人'

3.2 列表生成式

# 列表生成式
a = [1, 2, 3, 4, 5] c = [str(i) for i in a]
d = [str(i) for i in a if i % 2 != 0] # 可以加上if条件

python04篇 文件操作(二)、集合的更多相关文章

  1. Python入门篇-文件操作

    Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...

  2. python基础篇(文件操作)

    Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...

  3. python学习笔记(二)文件操作和集合

    集合: 集合也是一种数据类型,一个类似列表东西,它的特点是无序的,不重复的,也就是说集合中是没有重复的数据 集合的作用: 1.它可以把一个列表中重复的数据去掉,而不需要你再写判断 2.可以做关系测试, ...

  4. python学习笔记:文件操作和集合(转)

    转自:http://www.nnzhp.cn/article/16/ 这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句 ...

  5. iOS开发——C篇&文件操作

    今天开始C语言中的重点难点就基本上技术忘了,但是还有最后一个知识点不得不提,那就是文件操作. 我们都知道,我们每天都在使用电脑,手机,或者其他电子或者移动设备,其实我们在使用的时候每时每刻都在执行文件 ...

  6. Python基础--文件操作和集合

    这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...

  7. python基础(四)文件操作和集合

    一.文件操作 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 1.文件基本操作: f = open('file.txt','r') # ...

  8. 【Directory】文件操作(初识文件操作二)

    上篇我们说了关于文件的创建删除更改可以通过File这个类来完成.对于目录的操作其实File类也可以完成创建删除等相关的操作.用法跟文件的方法大致相同. 那么下面就一起来看一下关于目录相关的用法. 一, ...

  9. python基础编程: 编码补充、文件操作、集合、函数参数、函数递归、二分查找、匿名函数与高阶函数

    目录: 编码的补充 文件操作 集合 函数的参数 函数的递归 匿名函数与高阶函数 二分查找示例 一.编码的补充: 在python程序中,首行一般为:#-*- coding:utf-8 -*-,就是告诉p ...

随机推荐

  1. 让ThreadPoolExecutor的workQueue占满时自动阻塞submit()方法

    public class BlockingSubmitExecutor { private ExecutorService executor = new ThreadPoolExecutor(2, 2 ...

  2. Mysql索引创建及删除

    1.索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的My ...

  3. GitHub上开源的YOLOv5

    GitHub上开源的YOLOv5 代码地址:https://github.com/ultralytics/YOLOv5 该存储库代表Ultralytics对未来的对象检测方法的开源研究,并结合了我们在 ...

  4. CUDA 内存统一分析

    CUDA 内存统一分析 关于CUDA 编程的基本知识,如何编写一个简单的程序,在内存中分配两个可供 GPU 访问的数字数组,然后将它们加在 GPU 上. 本文介绍内存统一,这使得分配和访问系统中任何处 ...

  5. CVPR2020:视觉导航的神经拓扑SLAM

    CVPR2020:视觉导航的神经拓扑SLAM Neural Topological SLAM for Visual Navigation 论文地址: http://openaccess.thecvf. ...

  6. Docker Buildx插件

    Docker Buildx插件 Overview Docker Buildx是一个CLI插件,它扩展了Docker命令,完全支持Moby BuildKit builder toolkit提供的功能.它 ...

  7. 重新整理 .net core 实践篇—————静态中间件[二十一]

    前言 简单整理一下静态中间件. 正文 我们使用静态文件调用: app.UseStaticFiles(); 那么这个默认会将我们根目录下的wwwroot作为静态目录. 这个就比较值得注意的,可能刚开始学 ...

  8. 重新整理 .net core 实践篇—————文件系统[二十二]

    前言 简单介绍一下文件系统. 正文 文件系统,主要是下面3个接口组成: IFileProvider IFileInfo IDirectoryContents 那么他们的实现是: physicalFil ...

  9. 【NX二次开发】根据视图名称旋转视图,在布局中替换视图uc6464

    uc6464("布局名","旧视图名","新视图名");输入布局名.旧视图名.新视图名.如果布局名为空则更新当前布局.如果旧视图名为空,则工 ...

  10. NX二次开发-通过3x3矩阵获取XYZ轴矢量

    函数:UF_CSYS_ask_wcs() 函数说明:通过3x3矩阵获取XYZ轴矢量 用法: 1 #include <uf.h> 2 #include <uf_mtx.h> 3 ...