2018.3.7

一、列表作用

1、去重

去除列表中重复的元素并且变成一个集合list = set(list)

2、关系测试

取list1和list2列表的交集 list1.intersection=(list2)

取list1和list2列表的并集 list1.union=(list2)

取list1和list2列表的差集 list1.difference=(list2)

(取出list1里面有,list2里面没有的)

取list1和list2列表的对称差集

list1.symmetric_difference(list2)

判断list1是否是list2的子集list1.issubset(list2)

判断list1是否是list2的父集list1.issuperset(list2)

判断list1和list2列表是否没有交集list1.isdisjoint(list2)

用运算符表达

交集 list1 & list2    并集 sslist1 | list2

差集 list1 - list2     对称差集list1 ^ list2

集合增删改查

list1.add(999)  集合没有插入,只有增加,并且是无序的

list1.update([888,7,5]) 添加多项

list1.remove(1)删除

判断key是否在字典里  key in list1

判断key是否不是在字典里 key not in list1

二、文件操作

f = open(“yesterday”, ‘a’,encoding = “utf-8”)

文件句柄

a  (append)添加

w  (write)写,如果文件不存在,创建新文件写入

r+ (读写模式)以读和追加(追加在文件尾)的模式打开

w+ 先创建一个文件,再写,最后再读

rb 二进制读文件

rb应用地方

1、python3.0中网络传输只能用二进制

2、一行一行的读文件,在第二行加入分割线

(f.readlines只适合读小文件)

循环文件读出来,

for index, line in enumerate(f.readlines()):

if index == 2:

print("-----分割线-----")

continue

print(line.strip())

处理大文件,一行一行的读,读完一行就删除

#高级写法

count = 0

for line in f:

if count == 1:

print("-----分割线-----")

count += 1

continue

print(line.strip())

count += 1

f.seek(0)文件光标回到最开始

文件的一些操作

f.name()         文件名字

f.flush()         实时刷新

f.truncate(10)    从第10个字符开始截断,后面的清空

**类似于进度条创建**

import sys,time

sys.stdout.write(‘*’)

sys.stdout.flush()

time.sleep(0.1)

文件修改

创建一个新文件,再逐行写入,遇到需要修改的地方进行修改再写入,达到修改文件的目的

with 语句 (with代码块执行完毕时,内部会自动关闭并释放文件资源)
with open(‘log, r) as f:

三、字符编码与转码

转码先要decode转换成unicode码再encode转换成目标编码形式

例:gbk转utf8

decode(“本身的编码格式”)

encode(“目标编码格式”)

gbk_to_utf8 = s_gbk.decode(“gbk”)

gbk_to_utf8 = gbk_to_gbk.encode(“utf8”)

五、函数与函数式编程

1.面向对象:类(class)

2.面向过程:过程(def)

3.函数式编程:函数(def)

函数是逻辑结构化和过程化的一种编程方法

使用函数的三大特点

1.代码重用    2.保持一致性   3.可扩展

函数返回值:

返回值数=0;返回none

返回值数=1;返回object

返回值数>1;返回tuple

返回值是返回函数执行完毕的结果,用于后面程序执行方式判断

参数:

1.形参和实参

2.位置参数和关键字参数(标准调用:实参位置与形参位置一一对应,关键字调用:位置无固定,关键字必须在位置参数后面)

3.默认参数

4.参数组:*数组名(把N个未知参数转成元组的方式)

**字典名(把N个关键字参数转成字典的方式)

函数内局部变量只能在函数内生效

不应该在函数内部更改全局变量,非要改,用“global 全局变量”

除了字符串和整数不能再函数内改全局变量,列表、字典等都可以更改

*递归*

如果一个函数在内部调用自己,叫递归函数

特性:

1.必须有个明确的结束条件

2.每次进入更深一层递归时,问题规模相比上次递归都应有所减少

3.递归效率不高,递归层次过多会导致栈溢出

*函数式编程*

输入是确定的,输出就是确定的

*高阶函数*

变量可以指向函数,函数的参数能接受变量,那么一个函数可以接收另一个函数作为参数,这种函数就称之为高阶函数

作业:实现删除,创建,查询功能

转载于:https://www.cnblogs.com/hobbyzg/p/8527086.html

Studing Day4 - python基础4相关推荐

  1. Day4 - Python基础4 迭代器、装饰器、软件开发规范

    Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1. ...

  2. Day4 python基础

    一,列表: 列表:python基础数据类型之一,其他语言中也有列表的概念,如js的数组.特点:1.可索引,可切片,可加步长2.容器类数据类型,可以存放各种数据类型,根据索引取出的元素还保留自有数据类型 ...

  3. Studing Day3 - python基础3

    12.3 内容简介:1.列表.元组操作2.字符串操作3.字典操作4.集合操作5.文件操作6.字符编码与转码7.内置函数 一.列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现 ...

  4. Studing Day1 - python基础1

    11.23日学习 python是一个解释型的语言,也是一种强类型的动态类型的语言 强类型弱类型等详细解释: http://blog.csdn.net/gs_008/article/details/51 ...

  5. Studing Day2 - python基础2

    11.30 一.模块 sys 模块 sys.path是python的搜索模块的路径集,是一个list sys.argb是打印相对路径 os模块 os.system("dir") a ...

  6. python财务编程_Python笔记 财务小白的 day4 python编程基础(2)

    [本文的我,是一个文科财务工作者.在单位信息化全靠人做的年代,确实工作压力大也忙不过来.9102年的我,深感不学习点新知识迟早要被淘汰.所以今天开始记录自己的python小白笔记,各位见笑.] 编程基 ...

  7. python基础(一)完结

    Day 01 python基础 一.计算机基础 1.快捷键: 快速复制:Ctrl+D 垂直拆分 水平 拆分 快速修改 查看 2.计算机的组成 硬件:运算器 控制器 存储器 输入设备 输出设备 软件: ...

  8. f是一个python内部变量类型,Python基础变量类型——List浅析

    Python使用list 一.list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示 ...

  9. python 等号报错_Python学习----Python基础

    Python基础 一.数据类型和变量 1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量. 例如: a =520# a是整数prin ...

最新文章

  1. 移除IIS默认的响应头
  2. fifo 上使用 select -- 转
  3. python拼音怎么写-python: 拼音处理模块
  4. oracle 数据库管理员职责
  5. Nacos分布式配置实践
  6. C#通过COM组件操作IE浏览器(三):了解IHTMLDocument2
  7. IROS2020 | 鲁棒全景视觉惯性导航系统ROVINS
  8. 在控制用' * '台画一个圆形图案
  9. 统计函数应用之SQL 分析函数
  10. CrystalReports2008 SN
  11. PS 在PS中如何等比例放大缩小图片
  12. 使用docx4j追尾合并多个docx文件为一个docx文件
  13. 12生肖年份和星座组合图
  14. 基于扰动观测器的直流电机调速系统,(售出不退慎拍!) 有计算公式,仿真模型
  15. 后向重计算在OneFlow中的实现:以时间换空间,大幅降低显存占用
  16. 女生戴蓝牙耳机什么颜色好看?适合女生的高颜值蓝牙耳机
  17. 名帖107 俞和 小楷临《乐毅论》
  18. 基于jaccard计算论文对的reference相似度的算法(2)
  19. PHP解析js的escape()函数编码数据
  20. java 字节单位换算_【java虚拟机】内存使用单位换算

热门文章

  1. 父母脾气暴躁对孩子有哪些影响
  2. 为什么我不做金蝶二次开发了,个人的感受!
  3. Linux安装mysql数据库
  4. OD调试常见断点及原理(浓缩版)
  5. 如何制作企业在线产品手册?这里有一些简单的方法!
  6. Kafka源码环境搭建
  7. 海桂嘉积中学2021高考成绩查询,圆梦行动 “我想做记者,我想学计算机” 屯昌文武山村“高考姐妹花”的美好心愿...
  8. Spring boot(web 组件,ORM 操作 MySQL,接口架构风格—RESTful,集成 Redis,集成 Dubbo,打包)
  9. 移动光驱装服务器系统盘,光驱别扔,可以改装成移动光驱用
  10. win10系统获取管理员权限的设置方法一览