集合

# 集合天生就能去重,集合也是无序的  集合也是{ }  但是空集合定义特殊
s=set()  #空集合
s2 = set('1234445566778')
print(s2)

s3 = {'1','1','3','4','5','6','7','9'}

d = {'k':'v'}  #这个是字典

交集 并集 差集
就是两个集合相同的地方
print(s3 & s2)  #取交集
print(s3.intersection(s2))  #取交集
并集:就是把两个集合合并到一起,然后去重
print(s2 | s3)  #取并集
print(s2.union(s3))  #取并集
s4 = {1,2,3}
s5 = {1,4,6}
差集
   在一个集合里有,在另一个集合里面没有的
   S4里面有,s5里面没有的
  取一个集合存在,另一个不存在的元素
print( s4 - s5)  #取差集
print(s4.difference(s5)) #取差集
对称差集
   俩集合里面都没有
   去掉俩集合里面都有的
print(s4 ^ s5)
print(s4.symmetric_difference(s5))

集合的增删改查

s4.add('ss') #加元素
s4.pop()#随机删一个
s4.remove('ss')#指定删除哪个
s4.update({1,2,3}) #把另外一个集合加进去
s4.isdisjoint(s5)#如果没有交集的话返回true,如果有就返回false
print(s4.isdisjoint(s5))    false

打开文件

#open打开文件(python3   file()--python2里面的打开文件方法
f = open('D:/work/python/djl-20180310/lianxi/day4笔记/歌词',encoding='utf-8')  #打开文件,utf-8 中文
读文件
print(f.read())

print(f.readline())  #只读取一行内容
print(f.readlines())  #把文件里每一行放到一个list里面

f.write('adsfa')   #写入
读模式 r  读写 r+
    1、不能写
    2、文件不存在时会报错
写模式 w  写读模式 w+
    1、文件不存在的时候会帮你自动创建新文件
    2、打开一个已经存在的文件,他会覆盖以前文件的内容
    不能读
追加模式 a  追加读模式 a+
    1、文件不存在的话,会帮你新建文件
    2、打开一个已经存在的文件,不会情况,末尾增加
    3、不能读

c = open('duan','a+',encoding='utf-8')
print(c.read())
print(c.write('段佳林追加'))
print(c.read())

只要有r,文件不存在就报错
只要有w,都会清空原来的内容
有a 不存在可以添加,有的话直接追加到末尾,但是读不到内容

文件指针

f = open('歌词','a+',encoding='utf-8')
a模式默认文件指针在末尾
f.seek(0)   #移动文件指针到最前面
print('read读的内容',f.read())
f.write('这是我写的3')

文件指针:用来记录文件到底读到哪了
f= open('duan','a+',encoding='utf-8')
f.write('hahhah ')
f.seek(0)    #移动文件指针后只能读,写的时候还是在文件末尾写
print(f.read())

1、先随机产生一些手机号
2、写到文件里面
f = open('phonesno','w',encoding='utf-8')
num = input('请输入手机号个数:')
for i in range(int(num)):
    start = '1870042'
    n4_num= str(random.randint(1,9999)).zfill(4)
    phone_num = start + n4_num
    f.write(phone_num+'\n')
f.close()

自动关闭文件

with open('geci','a+') as f:
   for line in f:
      pass

python--集合和文件基本操作的更多相关文章

  1. python学习9—文件基本操作与高级操作

    python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...

  2. Python 目录和文件基本操作

    今天在写一个小工具的过程中发现对目录和文件的基本操作不是很熟,特此把遇到的常用操作总结汇总下. 获取当前路径:os.getcwd() 目录操作:1.创建目录:os.mkdir('目录名')2.创建多级 ...

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

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

  4. Python小白的发展之路之Python基础(二)【字符串、列表、集合、文件操作】

    列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表.元组操作 (1)列表 列表是可变的(mutable)——可以改变列表的内容,这不同于字符串和元组,字符串和元组都是不 ...

  5. python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...

  6. Day2 - Python基础2 列表、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 数字操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 ...

  7. python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  8. Python【第二课】 字符串,列表,字典,集合,文件操作

    本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或&quo ...

  9. (转)Python中集合(set)的基本操作以及一些常见的用法

    原文:http://blog.51cto.com/10616534/1944841 Python除了List.Tuple.Dict等常用数据类型外,还有一种数据类型叫做集合(set),集合的最大特点是 ...

  10. NO.3:自学python之路------集合、文件操作、函数

    引言 本来计划每周完成一篇Python的自学博客,由于上一篇到这一篇遇到了过年.开学等杂事,导致托更到现在.现在又是一个新的学期,春天也越来越近了(冷到感冒).好了,闲话就说这么多.开始本周的自学Py ...

随机推荐

  1. 曹工杂谈--只用一个命令,centos系统里装了啥软件,啥时候装的,全都清清楚楚

    前言 一直以来,对linux的掌握就是半桶水的状态,经常yum装个东西,结果依赖一堆东西:然后再用源码装个东西,只知道make.make install,背后干了啥也不清楚了,卸载也不方便. 这几天工 ...

  2. 文件读取的时候要留意 -- 序列化serialize()与反序列化unserialize():

    原文:https://blog.csdn.net/little_rabbit_baby/article/details/53840543 序列化serialize()与反序列化unserialize( ...

  3. GIT分布式版本控制

    1.1Git简介 linus 用C语言编写 2005年诞生 分布式版本管理系统 速度快,适合大规模,跨地区多人协同开发 Git不仅是一款开源的分布式版本控制系统,而且有其独特的功能特性,例如大多数的分 ...

  4. Spring boot自定义parent POM

    文章目录 概述 不使用Parent POM来引入Spring boot 覆盖依赖项版本 概述 在之前的Spring Boot例子中,我们都会用到这样的parent POM. <parent> ...

  5. material UI中子组件样式修改的几种方案研究

      material UI是一个流行的与React配套的前端UI框架,对于开发者而言,熟悉它的样式修改方案是必要的.但目前相关资料并不直观,并且没有总结到一起.如果对相关特性不太清楚,开发者很可能会在 ...

  6. Netty(七):EventLoop学习前导——Reactor模式

    了解Netty的人多少都会知道Netty的高性能的一个原因就是它是基于事件驱动的,而这一事件的原型就是Reactor模式. 所以在学习EventLoop前,很有必要先搞懂Reactor模式. 本文目录 ...

  7. 再砸4.35亿美元,LG疯狂扩建太阳能电池生产线

    LG在收缩高分辨率电视和其他消费电子产品业务的同时,在太阳能面板业务上却很明显一直在进行扩张.LG公司表示,他们将斥资4.35亿美元在韩国工厂增加超过6条生产线,使其太阳能电池生产量能够在2018年达 ...

  8. Xapian实战(三):索引

    参考资料: Xapian:Document, Value和Term Xapian:Database Xapian机制简要介绍 1. Xapian中各类要点总结 @ Database Database ...

  9. 洛谷 2016 战略游戏(树形DP)

    题目描述 Bob喜欢玩电脑游戏,特别是战略游戏.但是他经常无法找到快速玩过游戏的办法.现在他有个问题. 他要建立一个古城堡,城堡中的路形成一棵树.他要在这棵树的结点上放置最少数目的士兵,使得这些士兵能 ...

  10. 基于OpenCV的KNN算法实现手写数字识别

    基于OpenCV的KNN算法实现手写数字识别 一.数据预处理 # 导入所需模块 import cv2 import numpy as np import matplotlib.pyplot as pl ...