一、定义一个列表的操作类Listinfo

包括的方法

1、列表元素添加:add_key()  添加的必须是数字或者是字符串

2、列表元素取值:get_key()

3、列表合并:update_list(list)

4、删除并且返回最后一个元素:del_key()

--------------------------------------------------------------

class ListInfo(object):
   
    def __init__(self, list_val):
        self.list = list_val
       
    def add_key(self, key_name):
        self.list.append(key_name)
        print(self.list)
        return "OK"
   
    def get_key(self, index):
        #判断传入的索引是否超出了列表
        if index >= 0 and index < len(self.list):
            return self.list[index]
        return "你输入的太多了,想太多了"
   
    def update_list(self, new_list):
        self.list.extend(new_list)
        return self.list
   
    def del_key(self):
        #首先要判断我们的列表里面还有元素
        if len(self.list) >= 0:
            return self.list.pop(-1)
        else:
            return "列表是空的"
   
list_info = ListInfo([1,2,3,4,5])
print(list_info.add_key(6))
print(list_info.update_list([8,9,10]))
-------------------------------------------------------------------
定义一个集合的操作类
包括的方法
  1、集合元素添加:add_setinfo()
  2、集合的交集:get_intersection()
  3、集合的并集:get_union()
  4、集合的差集:del_difference()
-------------------------------------------------------
class SecInfo(object):
    def __init__(self, my_set):
        self.sett = my_set
       
    def add_setinfo(self, keyname):
        self.sett.add(keyname)
        return self.sett
   
    def get_intersection(self, unioninfo):
        if isinstance(unioninfo, set):
            return self.sett & unioninfo
        else:
            return "你传入的不是set"
    def get_union(self, unioninfo):
        return self.sett |  unioninfo
   
    def del_difference(self, unioninfo):
        return self.sett - unioninfo
A = set([1,2,3,4,5])
B = set([5,6,3])
#my_set = SecInfo((1,2,3,4,5))
#print(my_set.add_setinfo(6))
my_set = SecInfo(A)
print(my_set.get_intersection(B))
print(my_set.del_difference(B))
---------------------------------------------
 
 

Python---面向对象编程---自定义列表和集合操作类的更多相关文章

  1. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  2. 图解python | 面向对象编程

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/56 本文地址:http://www.showmeai.tech/article-det ...

  3. python面向对象编程进阶

    python面向对象编程进阶 一.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 1 ...

  4. Python面向对象编程指南

    Python面向对象编程指南(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1SbD4gum4yGcUruH9icTPCQ 提取码:fzk5 复制这段内容后打开百度网 ...

  5. python 面向对象编程学习

    1. 问题:将所有代码放入一个py文件:无法维护 方案:如果将代码才分放到多个py文件,好处: 1. 同一个名字的变量互相不影响 2.易于维护 3.引用模块: import module 2.包:解决 ...

  6. python 面向对象编程(一)

    一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法. 类是对现实世界中一些事物的封装,定义一个类可以采用下面的方式来定义: class c ...

  7. Python面向对象编程(下)

    本文主要通过几个实例介绍Python面向对象编程中的封装.继承.多态三大特性. 封装性 我们还是继续来看下上文中的例子,使用Student类创建一个对象,并修改对象的属性.代码如下: #-*- cod ...

  8. Python面向对象编程和模块

    在面向对象编程中,你编写表示现实世界中的事物和情景的类,并基于这些类来创建对象. 编写类时,你定义一大类对象都有的通用行为.基于类创建对象时,每个对象都自动具备这种通用行为,然后根据需要赋予每个对象独 ...

  9. python面向对象编程学习

    python面向对象编程 基本概念理解 面向对象编程--Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作 ...

随机推荐

  1. docker windows下挂载目录和文件

    我们利用docker启动项目的时候不能直接修改容器中的内容,只能在  run  的时候挂载到本地目录或者文件来进行修改. 例子:(路径可以忽略斜杠和反斜杠,我这边使用windows的路径没有报错.do ...

  2. 虚拟机中Ubuntu安装及基本功能设置

    虚拟机下安装ubuntu 虚拟机使用VMware14 PRO,在TOSHIBA EXT/Anon Comm Group\Experimental Environment\VMware下. 系统使用ub ...

  3. Scratch少儿编程系列:(三)第一个例子 潜水员

    一. 选择背景 在上一节系统界面的介绍中,选择"6角色"的左边,点击"从背景库中选择背景". 选择主题水下中的"underwater3". ...

  4. 安装mysql5.6-centOs7

    安装mysql mysql,下载地址:https://dev.mysql.com/downloads/mysql/ 安装参考链接:https://segmentfault.com/a/11900000 ...

  5. switch条件变量的取值类型

    switch条件变量的取值类型主要有以下六种: 1)JDK1.5(不含JDK1.5)之前只能是byte.short.int.char类型,不能是float.double.long.boolean类型. ...

  6. HNUSTOJ 1604:Operations

    1604: Operations 时间限制: 2 Sec  内存限制: 128 MB 提交: 313  解决: 97 [提交][状态][讨论版] 题目描述 You can perform the fo ...

  7. 【vuejs面试题】务必熟知的vuejs面试题「务必收藏」

    如果能帮到你,点个赞吧,务必熟知的vuejs面试题「务必收藏」 vuejs 基础必备 1.active-class 是哪个组件的属性?嵌套路由怎么定义 (1).active-class 是 vue-r ...

  8. easyui 前端分页及前端查询

    1.静态分页核心方法 // 前端分页 -- 将datagrid的loadFilter属性设置为这个方法名即可 function partPurchasePagerFilter(data) { if ( ...

  9. 缓存字节流-写coppy方法

    package ba; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io. ...

  10. 简单的物流项目实战,WPF的MVVM设计模式(二)

    往Models文件添加一个类,ConnectObject         /// <summary>        /// 链接数据库字符串        /// </summary ...