在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是自定義序列

汽車電子技術 ? 來源:Python數據分析之旅 ? 作者:cauwfq ? 2023-02-24 14:48 ? 次閱讀

pYYBAGP4XKOASk46AADbBInwAKM340.png

一.項目背景

本篇主要想給大家介紹一下我們平常用的最多數據結構序列,主要從它的分類和如何自定義序列兩方面給大家講解,屬于Python高階內容知識點,希望大家能夠學有所獲。

二.序列分類

1.容器序列:list、tuple、deque
2.扁平序列:str、bytes、bytearray、array.array
3.可變序列:list, deque,bytearray、array
4.不可變序列:str、tuple、bytes
這里我們分享一下array.array基本使用。

pYYBAGP4XNmAInI_AAEU5X5EvrQ609.png
from array import array

#創建array,類型為無符號整型
myarr = array("I")
#添加元素5
myarr.append(5)
#添加元素6
myarr.append(6)
#添加元素4
myarr.append(4)
#添加元素3
myarr.append(3)
#輸出array
print(myarr)
#刪除最后一個元素
myarr.pop()
#輸出array
print(myarr)

pYYBAGP4XTGANk44AABFWY6N0CU217.png

三.自定義序列

1.分析abc繼承關系
》》from collections import abc
》》分析Sequence相關抽象方法
》》__init__,__reversed__,__getitem__,__len__,__iter__,__contains_

poYBAGP4XUmAfUS0AAEQf7vKksk409.png
importnumbers


class Stus:
    #初始化操作
    def __init__(self, school_name, study_name, students):
        #初始化學校名稱
        self.school_name = school_name
        #初始化學習小組名稱
        self.study_name = study_name
        #初始化學生名單
        self.students = students
  
    #反轉序列
    def __reversed__(self):
        self.students.reverse()
   
    #獲取元素
    def __getitem__(self, item):
        #獲取類名稱類型
        cls = type(self)
        #判斷item是否為切片類型,主要目的是讓序列支持切片操作
        if isinstance(item, slice):
            #初始化對象
            return cls(school_name=self.school_name, study_name=self.study_name, students=self.students[item])
        #判斷item是否為整型類型,主要目的是讓序列支持切片操作
        elif isinstance(item, numbers.Integral):
            #初始化對象
            return cls(school_name=self.school_name, study_name=self.study_name, students=[self.students[item]])
  
    #返回學生名單長度
    def __len__(self):
        return len(self.students)

    #轉換為可迭代對象
    def __iter__(self):
        return iter(self.students)

    #判斷是否含有該對象
    def __contains__(self, item):
        #判斷是否存在
        if item in self.students:
            #存在返回True
            return True
        else:
            #不存在返回False
            return False
            
            
#初始化學生名單
students = ["zhangsan", "lisi", "wangwu", "zhaoliu"]
#初始化對象
stus = Stus(school_name="第一中學", study_name="Physics", students=students)
#反轉對象
reversed(stus)
#輸出提示信息
print('*'*30)
#輸出對象長度
print(len(stus))
#輸出提示信息
print('*'*30)
#使用切片獲取對象,遍歷每個對象
for stu in stus[:2]:
    #輸出對象
    print(stu)
#輸出提示信息
print('*'*30)
#判斷對象是否存在
if "zhangsan" in stus:
    print(1)
else:
    print(0)
#輸出提示信息
print('*'*30)
#遍歷每個對象
for stu in stus:
    #輸出對象
    print(stu)

pYYBAGP4XWmAP55dAABbd-9V_TE204.png
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據結構
    +關注

    關注

    3

    文章

    573

    瀏覽量

    40130
  • 序列
    +關注

    關注

    0

    文章

    70

    瀏覽量

    19557
  • python
    +關注

    關注

    56

    文章

    4797

    瀏覽量

    84683
收藏 人收藏

    評論

    相關推薦

    【Python編程思想】B站最全的Python視頻課程,趕快來體驗-方法、屬性和迭代器-04-自定義序列-1

    編程語言行業芯事經驗分享
    蒙娜麗寧
    發布于 :2022年02月28日 13:47:15

    【Python編程思想】B站最全的Python視頻課程,趕快來體驗-方法、屬性和迭代器-04-自定義序列-2

    編程語言行業芯事經驗分享
    蒙娜麗寧
    發布于 :2022年02月28日 13:47:51

    E5022A/B和E5023A用戶自定義序列編程手冊

    This manual provides the information for programmers to create his or her own programs. This manual includes sample programs in Visual Basic and function references.
    發表于 08-19 14:18

    自定義函數測試學習工程

    自定義函數測試學習工程
    發表于 07-01 16:37 ?5次下載

    1602自定義字符

    1602液晶能夠顯示自定義字符,能夠根據讀者的具體情況顯示自定義字符。
    發表于 01-20 15:43 ?1次下載

    JAVA教程之自定義光標

    JAVA教程之自定義光標,很好的學習資料。
    發表于 03-31 11:13 ?7次下載

    PDH網管盤 自定義字節

    PDH網管盤 自定義字節
    發表于 12-26 22:13 ?0次下載

    Python學習要點:自定義序列實現切片功能

    基于原生的序列類型(如字符串、列表、元組),那么,我們是否可以定義自己的序列類型并讓它支持切片語法呢?更進一步,我們是否可以自定義其它對象(如字典)并讓它支持切片呢? 1、魔術方法:_
    發表于 11-24 11:51 ?691次閱讀

    目前S型數字源表上位機軟件實現的功能有哪些

    目前S型數字源表上位機軟件已實現了哪些功能? ①、I-t、V-t、R-t測試; ②、序列掃描; ③、自定義序列掃描; ④、BJT掃描; ⑤、MOS掃描; ⑥、LIV測試; 相關功能均具有繪圖及數據
    發表于 10-23 13:31 ?579次閱讀

    自定義視圖組件教程案例

    自定義組件 1.自定義組件-particles(粒子效果) 2.自定義組件- pulse(脈沖button效果) 3.自定義組件-progress(progress效果) 4.
    發表于 04-08 10:48 ?14次下載

    ArkUI如何自定義彈窗(eTS)

    自定義彈窗其實也是比較簡單的,通過CustomDialogController類就可以顯示自定義彈窗。
    的頭像 發表于 08-31 08:24 ?2198次閱讀

    如何使用周期性空間頻率表面來建模旋轉對稱曲面的不規則度?

    具體方法為使用專用的自定義序列模式表面DLL(常規偶次非球面結合Zernike項與矢高周期變化得到)建模該中空間頻率表面。
    的頭像 發表于 01-17 11:42 ?1250次閱讀

    labview自定義控件

    labview自定義精美控件
    發表于 05-15 16:46 ?17次下載

    自定義算子開發

    一個完整的自定義算子應用過程包括注冊算子、算子實現、含自定義算子模型轉換和運行含自定義op模型四個階段。在大多數情況下,您的模型應該可以通過使用hb_mapper工具完成轉換并順利部署到地平線芯片上……
    的頭像 發表于 04-07 16:11 ?2811次閱讀
    <b class='flag-5'>自定義</b>算子開發

    labview超快自定義控件制作和普通自定義控件制作

    labview超快自定義控件制作和普通自定義控件制作
    發表于 08-21 10:32 ?13次下載
    主站蜘蛛池模板: seetube18日本第一次| 视频一区二区在线| 中文字幕在线色| 天天影视网天天影网| 97capcom超频在线| 亚洲综合春色另类久久| 精品国产乱码久久久久久浪潮 | 2018国产精品| 亚洲成在人| 高黄视频| 男人午夜小视频| 色婷婷精品| 夜夜狠| 亚洲一区二区免费在线观看| 色丁香婷婷| 天天爽夜夜爽视频| 日本一区二区三区不卡在线视频| 日本特黄a级高清免费大片18| 午夜国产在线观看| 黄色视网站| 亚洲色图第一页| 大黄香蕉| 亚洲一区免费在线| 免费在线黄网站| 精品国产午夜久久久久九九| 一 级 黄 色 片生活片| 成人a在线| 在线观看视频一区| 久久亚洲国产欧洲精品一| 国产午夜毛片v一区二区三区| 五月天丁香婷| 五月天婷婷社区| 一级日本大片免费观看视频| 成 人 免费观看网站| 羞羞答答91麻豆网站入口| 激情五月开心网| 啪啪免费网| 毛茸茸成熟妇女亚洲人| а8天堂资源在线官网| 日日噜噜夜夜狠狠久久aⅴ| 欧洲成人r片在线观看|