亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
  • set提供了remove()方法允許我們刪除set中的元素。

    如果remove的元素不在set里面的話,那么將會引發錯誤。要提前判斷要remove()的元素是否在set里面,確保存在后,再進行remove。


    任務:

    # 針對以下set,給定一個list,對于list里面的每個元素,如果set中包含這個元素,就將其刪除,否則添加到set里面去。

    L = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    S = set([1, 3, 5, 7, 9, 11])

    #?Enter?a?code
    L?=?[1,?2,?3,?4,?5,?6,?7,?8,?9,?10]
    S?=?set([1,?3,?5,?7,?9,?11])
    for?x?in?L:
    ????if?x?in?S:
    ????????S.remove(x)
    ????else:
    ????????S.add(x)
    print(S)
    查看全部
  • set提供add()方法,往set里面添加元素。

    name_set.add('Gina')

    批量往set里面添加元素:set提供了update()方法,可以一次性給set添加多個元素。

    names?=?['Alice',?'Bob',?'Candy',?'David',?'Ellena']
    new_names?=?['Hally',?'Isen',?'Jenny',?'Karl']
    name_set?=?set(names)
    name_set.update(new_names)


    任務:

    # 請使用兩種方式往空的set中添加以下名字:['Jenny', 'Ellena',?'Alice', 'Candy', 'David', 'Hally', 'Bob', 'Isen', 'Karl']。

    #?coding=utf-8
    names?=?['Jenny',?'Ellena',?'Alice',?'Candy',?'David',?'Hally',?'Bob',?'Isen',?'Karl']
    nameset?=?set([])
    nameset.update(names)
    print(nameset)
    #?coding=utf-8
    names?=?['Jenny',?'Ellena',?'Alice',?'Candy',?'David',?'Hally',?'Bob',?'Isen',?'Karl']
    nameset?=?set([])
    for?x?in?names:
    ????nameset.add(x)
    print(nameset)
    查看全部
  • set里面的元素是沒有順序的,因此我們不能像list那樣通過索引來訪問。訪問set中的某個元素實際上就是判斷一個元素是否在set中,這個時候我們可以使用in來判斷某個元素是否在set中。

    set元素是區分大小寫的,必須大小寫完全匹配,才能判斷該元素在set里面。


    任務:

    # 由于name_set不能識別小寫的名字,請改進name_set,是小寫的名字也能判斷在name_set里面。

    names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    name_set = set(names)

    #?Enter?a?code
    names1?=?['Alice',?'Bob',?'Candy',?'David',?'Ellena']
    names2?=?[]
    for?x?in?names1:
    ????names2.append(x.lower())
    ????
    name_set?=?set(names2)
    bool1?=?'Alice'.lower()?in?name_set
    print(bool1)
    查看全部
  • ""或''只是一種表達方式,

    查看全部
  • set里面的元素是不允許重復的,set里面的元素是沒有順序的。

    創建set的方式是使用set(),并傳入一個list,list的元素將會被轉換成set的元素。

    s = set([1, 4, 3, 2, 5])


    任務:

    # 請使用set表示班里面的五個同學。
    'Alice', 'Bob', 'Candy', 'David', 'Ellena'

    #?Enter?a?code
    set1?=?set(['Alice',?'Bob',?'Candy',?'David',?'Ellena'])
    print(set1)
    查看全部
    0 采集 收起 來源:什么是set

    2021-10-04

  • dict提供keys()函數,可以返回dict中所有的key。

    dict提供values()函數,可以返回dict中所有的value。

    dict提供clear()函數,可以直接清除dict中所有的元素。


    任務:

    # 已知d = {'Alice': [50, 61, 66], 'Bob': [80, 61, 66], 'Candy': [88, 75, 90]},請輸出d的元素個數。

    #?Enter?a?code
    d?=?{'Alice':?[50,?61,?66],?'Bob':?[80,?61,?66],?'Candy':?[88,?75,?90]}
    L?=?d.keys()
    num?=?len(L)
    print(L)
    print(num)
    查看全部
  • dict提供便捷的pop()方法,允許我們快速刪除元素,pop()方法需要指定需要刪除的元素的key,并返回對應的value。

    alice_score= d.pop('Alice')
    pop()方法的參數是dict中的key,當key不存在時,同樣會引起錯誤。比如在上述操作中,已經把Alice的成績刪除了,假如再次pop('Alice'),將會引發錯誤。KeyError


    任務:

    # 在dict中,使用keys()方法,可以返回dict的所有key,在刪除某個元素時,可以通過這個方法先判斷某個元素是否存在,請改造前面的程序,使得即使key不存在時,刪除也不會拋異常。


    #?Enter?a?code
    d?=?{
    ????'Alice':?45,
    ????'Bob':?60,
    ????'Candy':?75,
    ????'David':?86,
    ????'Ellena':?49
    }
    alice_score=?d.pop('Alice')
    key?=?'Alice'
    if?key?in?d.keys():
    ????d.pop(key)
    ????
    print(d.keys())
    print(d)
    查看全部
  • 通過賦值語句就可以把元素添加到dict中去,這個賦值語句其實有兩個功能:

    1. 當key不存在時,往dict中添加對應的key: value元素。

    2. 當key存在時,會更新dict,用新的value替換原來的value。

    在使用賦值語句往dict中添加元素時,為了避免不必要的覆蓋問題,我們需要先判斷key是否存在,然后再做更新。


    任務:

    # 已有同學們的成績如下,請更新Alice的成績為60,并把舊的成績記錄下來。

    d = {
    ? ?'Alice': 45,
    ? ?'Bob': 60,
    ? ?'Candy': 75,
    ? ?'David': 86,
    ? ?'Ellena': 49






    }

    解答如下:

    d?=?{
    ????'Alice':?45,
    ????'Bob':?60,
    ????'Candy':?75,
    ????'David':?86,
    ????'Ellena':?49
    }
    print(d)
    past?=?d['Alice']
    d['Alice']?=?60
    print(past)
    print(d)


    查看全部
  • dict是可變的,我們隨時可以往dict中添加新的key-value。value可以是任意類型的元素,可以是list、tuple等。可以使用賦值語句往dict中添加元素。


    任務

    已有同學的某次成績dict如下:

    d?=?{
    ????'Alice':?[45],
    ????'Bob':?[60],
    ????'Candy':?[75],
    }

    Alice、Bob、Candy的最近三次的成績分別是[50, 61, 66],[80, 61, 66],[88, 75, 90],請更新dict,使得dict可以保存同學多次的成績。

    #?Enter?a?code
    d?=?{
    ????'Alice':?[45],
    ????'Bob':?[60],
    ????'Candy':?[75],
    }
    print(d)
    d['Alice']?=?[50,?61,?66]
    d['Bob']?=?[80,?61,?60]
    d['Candy']?=?[88,?75,?90]
    print(d)
    查看全部
  • 1. dict提供通過key找到對應value的功能,通過d[key]的形式,就可以得到對應的value。

    當對應的key不存在時,會引發錯誤。KeyError

    需要通過key找到value時,一定要先判斷key存不存在,然后才使用d[key]的方式獲取對應的value,以避免錯誤。

    if?'Alice'?in?d:
    ????print(d['Alice'])

    2. 還有一種方法可以通過通過key來獲取對應的value,這種方法不會引起錯誤,dict本身提供get方法,把key當作參數傳遞給get方法,就可以獲取對應的value,當key不存在時,也不會報錯,而是返回None。

    通過get方法在代碼實現上更加簡單,且不會引起錯誤,因此更加推薦使用get方法來獲取dict的元素。


    任務

    根據如下dict,打印出Alice, Bob, Candy, Mimi, David的成績,當同學不存在時,打印None。

    #?Enter?a?code
    d?=?{
    ????????'Alice':?45,????
    ????'Bob':?60,????
    ????'Candy':?75,????
    ????'David':?86,????
    ????'Ellena':?49
    ????}
    L?=?['Alice',?'Bob',?'Candy',?'Mimi',?'David']
    for?key?in?L:
    ????print(d.get(key))
    查看全部
  • python的dict就是專門保存這種映射的,使用dict可以方便的保存“名字”->“成績”的映射。dict中,每一項包含一個key和一個value,key和value是一一對應的。

    d?=?{
    ????'Alice':?45,
    ????'Bob':?60,
    ????'Candy':?75,
    ????'David':?86,
    ????'Ellena':?49
    }

    我們使用花括號{}表示這是一個dict,然后key和value之間使用冒號:分割,并且每一組key:value的最后,以逗號,表示這一組的結束。
    我們也可以使用以下的方式定義一個dict,默認得到的是一個空dict,需要調用函數往里面添加數據。

    d?=?dict()
    print(d)?#?==>?{}


    任務:

    # 新來的Gaven同學成績是86,請編寫一個dict,把Gaven同學的成績也加進去。

    # Enter a code

    d = {

    ? ? 'Alice': 45,

    ? ? 'Bob': 60,

    ? ? 'Candy': 75,

    ? ? 'David': 86,

    ? ? 'Ellena': 49,

    ? ? 'Gaven':86

    }

    print(d)

    查看全部
    0 采集 收起 來源:什么是dict

    2021-10-03

  • tuple是不可變的,tuple里面的元素,也是不可替換的,針對的是僅包含基礎數據類型(數字類型、布爾類型、字符串類型)的數據,對于組合數據類型,則不受這個約束。

    T?=?(1,?'CH',?[3,?4])
    L?=?T[2]
    print(L)?#?==>?[3,?4]
    #?嘗試替換L中的元素
    L[1]?=?40
    print(L)?#?==>?[3,?40]
    print(T)?#?==>?(1,?'CH',?[3,?40])

    雖然tuple中的list元素改變了,但是tuple本身指向的list仍然是同一個list,list本身并沒有改變,改變的只是list里面的一個元素,這是tuple所約束不到的范圍。

    http://img1.sycdn.imooc.com//615960c3000133d104740305.jpg

    如果我們直接替換list,這也是不行的。


    任務:

    # T = (1, 'CH', [3, 4])
    tuple里面包含list,導致tuple是可變的,請修改T的定義,不改變基本數據類型的數據,使T是不可變的。


    # Enter a code

    T = (1, 'CH', [3, 4])

    print(T)

    listtemp = list(T)

    listtemp[2] = tuple(listtemp[2])

    T = tuple(listtemp)

    print(T)


    # 先將T轉變為list,然后更改里面的list為tuple,最后將該list轉變為tuple。

    查看全部
  • tuple和list一樣,可以包含 0 個、1個和任意多個元素。

    1. 包含 0 個元素的 tuple,也就是空tuple,直接用()表示:T = ()

    2. 改變優先級我們是通過()來實現的,這和元組的定義有沖突。要定義只有一個元素的tuple,需要在元素后面添加一個逗號,:T = (1, )

    3. 對于多個元素的tuple,則加和不加這個逗號,效果是一樣的:T = (1, 2, 3,)


    任務:

    # tuple的元素也可以是tuple,請判斷以下定義T的元素中,有多少個tuple。

    T = ((1+2), ?((1+2),), ('a'+'b'), (1, ), (1,2,3,4,5))

    答:T的元素中,有5個tuple,分別是:(1+2)????((1+2),)????('a'+'b')????(1,)? ?(1,2,3,4,5)? ?

    查看全部
  • tuple一旦定義之后便不可修改,所以在實際編程中,tuple經常用于存放固定不變的數據。

    tuple提供了便捷的方法可以訪問tuple中的數據。

    1. count()方法用來統計tuple中某個元素出現的次數。

    T?=?(1,?1,?2,?2,?3,?3,?1,?3,?5,?7,?9)
    print(T.count(1))?#?==>?3
    print(T.count(5))?#?==>?1

    對于不存在的元素,count方法不會報錯,而是返回0,這是合理的,因為元組里面有0個不存在的元素。

    2.?index()方法可以返回指定元素的下標,當一個元素多次重復出現時,則返回第一次出現的下標位置。

    index()方法和count()方法不一樣,當指定的元素不存在時,使用index()方法Python會報錯。ValueError: tuple.index(x): x not in tuple.


    任務:

    # 在某次考試中,班上的成績如下:(100, 69, 29, 100, 72, 99, 98, 100, 75, 100, 100, 42, 88, 100),請統計滿分(100分)同學的數量。


    # Enter a code

    tuple1 = (100, 69, 29, 100, 72, 99, 98, 100, 75, 100, 100, 42, 88, 100)

    x = tuple1.count(100)

    print(x)

    查看全部
  • 元組(tuple)和list一樣,也是一個有序容器,在元組中,同樣可以包含0個或者多個元素,并且也支持索引訪問、切片等操作。

    定義元組的方式是使用小括號()將元組內的元素括起來。

    T?=?('Alice',?'Bob',?'Candy',?'David',?'Ellena')

    元組數據類型可以把不是元組的容器轉換為元組,比如將列表轉換成元組。

    T?=?tuple(L)

    對于列表數據類型,也可以把元組轉換成列表。

    L?=?list(T)

    tuple和list不一樣的是,tuple是固定不變的,一旦變成tuple,tuple中的每一個元素都不可被改變,同時也不能再往tuple中添加數據,而list是可以的。

    注意:元組(tuple)的這個特性是非常重要的,在運行上tuple的性能是list的數倍。


    任務:


    #?請創建一個tuple,順序包含0~9的十個數,并嘗試將其轉換為列表list。
    #?Enter?a?code
    list1?=?[]
    for?i?in?range(10):
    ????list1.append(i)
    tuple1?=?tuple(list1)
    list1?=?list(tuple1)
    print(tuple1)
    print(list1)
    查看全部
    0 采集 收起 來源:什么是tuple

    2021-10-03

舉報

0/150
提交
取消
課程須知
如果您了解程序設計的基本概念,會簡單使用命令行,了解中學數學函數的概念,那么對課程學習會有很大的幫助,讓您學起來得心應手,快速進入Python世界。
老師告訴你能學到什么?
通過本課程的學習,您將學會搭建基本的Python開發環境,以函數為基礎編寫完整的Python代碼,熟練掌握Python的基本數據類型以及list和dict的操作,靈活使用流程控制語句。

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!