zoukankan      html  css  js  c++  java
  • python笔记第三节

    一集合:是一个没有重复数据,无序的组合。                                                                                                                                           

        集合可以有任意数量的元素,它们可以是不同的类型(例如:数字、元组、字符串等)。但是,集合不能有可变元素(例如:列表、集合或字典)。如下图:

        

        虽然集合不能有可变元素,但是集合本身是可变的。也就是说,可以添加或删除其中的元素。如下图:

        

        

        创建空集合比较特殊。在 Python 中,空花括号({})用于创建空字典。要创建一个没有任何元素的集合,使用 set() 函数(不要包含任何参数)。如下图:

        

        由于集合是无序的,所以索引没有任何意义。也就是说,无法使用索引或切片访问或更改集合元素

        集合常用的方法,如下图。

        

        验证集合间关系的方法调用 ,如下图:

        

        关于对称差集的使用:

        

        关于删除的三种方式的补充说明:

        pop()方法为随机删除一个元素。并不常用。

        discard()方法删除指定元素,若该元素不存在,返回none。

        remove()方法删除指定元素,若该元素不存在,在报错。

           

    二 文件操作:                                                                                                                  

      关于文件句柄:  

        

          

       三种读文件的方式:

        

        

        

        

        方法1 : 读一行,删一行,在内存中只放一行。

        方法2 : 一次性把所有文件读入内存,容易造成内存不足,溢出。

        方法3 :读一行,放入内存一行,循环的后期也容易造成内存不足,溢出。

        建议使用第一种方法读取数据。

        文件句柄的方法:

        

        f.flush()      #讲文件内容从内存刷到硬盘(python3.x)

        f.closed       #文件如果关闭则返回True

        f.encoding   #查看使用open打开文件的编码

        f.tell()         #查看文件处理当前的光标位置

        f.seek(3)     #从开头开始算,将光标移动到第三个字节

        关于文件的关闭:

         在文件打开使用的状态出错,是不会执行后面的close()操作的。这样会导致资源浪费。所以建议使用with。with结束之后,自动关闭。如下图:

          

          关于r,w,a的区别:

          

          需要注意的是,open中默认为r模式。w模式,若文件没有,则创建新文件,若文件存在,则覆盖源文件。a模式,表示在原文件中追加。

          r+ 模式常用。

    三编码:                                                                                                              

        

      unicode:简单粗暴,所有字符都是2Bytes,优点是字符->数字的转换速度快,缺点是占用空间大

      utf-8:精准,对不同的字符用不同的长度表示,优点是节省空间,缺点是:字符->数字的转换速度慢,因为每次都需要计算出字符需要多长的Bytes才能够准确表示

    1. 内存中使用的编码是unicode,用空间换时间(程序都需要加载到内存才能运行,因而内存应该是尽可能的保证快)
    2. 硬盘中或者网络传输用utf-8,网络I/O延迟或磁盘I/O延迟要远大与utf-8的转换延迟,而且I/O应该是尽可能地节省带宽,保证数据传输的稳定性

      

      

        需要注意:

         utf-8是unicode 的一个可变长度的扩展集。

          Python中默认所有的字符格式为Unicode。文件开头指定的是文件的编码方式。

          Python3.X 中默认的文件编码方式为utf-8。

          Python3.X中字符的编码方式默认为Unicode,可以通过encode()和decode()改变。通过encode()之后的str变成bytes类型。

    四函数:                                                                                                                          

        

        需要注意:位置参数是不允许 放在关键参数 后面的

        

        不定个数的位置参数传入,可使用*变量名接收。参数以元组的形式存储。

        不定个数的关键参数传入,可以使用**变量名接收。参数以字典形式存储。

      

  • 相关阅读:
    某公司面试java试题之【二】,看看吧,说不定就是你将要做的题
    BAT面试上机题从3亿个ip中找出访问次数最多的IP详解
    Android 最流行的吸顶效果的实现及代码
    postgresql某进程占用cpu资源过高,降不下来
    媳妇要转java开发,我该怎么办?
    【原创】微信公众号电影网站域名被屏蔽完美解决方案!
    java如何对List集合中的元素进行排序(请收藏)
    【转】多语言的正则表达式,我们应该掌握
    【转】app之YdbOnline说明文档
    [敏捷开发实践](0) 开始
  • 原文地址:https://www.cnblogs.com/lyy9902/p/9580056.html
Copyright © 2011-2022 走看看