Try   HackMD

Python基本型態、運算子、群集型態測驗-參考答案

tags: python

基本型態、運算子

  1. Python數值型態有哪4種?
    答:

    ​​​int, float, bool, complex
    
  2. 字串可以使用哪些算術運算子?
    答:

    ​​​+: 串接
    ​​​*: 重複字串
    
  3. 在字串裡可以使用什麼轉譯字來換行?
    答:

    ​​​​\n
    
  4. 何謂r字串?

    答:

    ​​​​r字串為raw,轉譯符號會被當成一般文字輸出
    
  5. Python有哪幾種格式化字串的方式?

    答:

    ​​​​C風格、str.format()、f字串
    
  6. 4 < 0的運算會產生甚麼結果?

    答:

    ​​​​False
    
  7. Python內如何使用註解?

    答:

    ​​​​#: 單行註解。
    ​​​​PYTHON本身不支援多行註解,但可以用 '''  多行的方式來包住想註解的區段,執行的時候會被忽略。
    
  8. 該怎麼去掉4.5的小數點? 請寫出程式碼。

    答:

    ​​​​int(4.5)
    
  9. 請用指派運算子寫出a = a + 99的精簡寫法。
    答:

    ​​​​​a += 99
    
  10. 何謂轉型? 請舉例以程式碼示範將字串轉型為整數。
    答:

    ​​​​轉型意指將某一個基本型態轉換成另一種基本型態。
    ​​​​
    ​​​​字串轉型為整數可以使用int()方法,例如:
    ​​​​to_str = int('99')
    

群集型態

  1. Python有哪4種群集型態?
    答:

    ​​​清單(list)
    ​​​集合(set)
    ​​​字典(dict)
    ​​​Tuple(tuple)
    
  2. 要如何取得['aaron', 'andy', 'abner']清單內的'abner'這筆資料? 請寫出程式碼。
    答:

    ​​​print(['aaron', 'andy','abner'][2])
    
  3. 該怎麼判斷某個元素是否存在於list當中?
    答:

    ​​​使用in判斷資料是否存在容器內
    
  4. a = {}會建立出甚麼群集型態?
    答:

    ​​​建立dict 型態
    
  5. 哪兩種方法可以取得dict內的值?
    答:

    ​​​get()與[]
    
  6. 要刪除tuple內某一筆資料有哪些方法?
    答:

    ​​​tuple內的資料無法刪除。
    
  7. a, b, c = (1, 2, 3)這是資料的pack還是unpack?
    答:

    ​​​unpack
    
  8. 如何用一行程式碼產生一個1~100之間偶數的list

    ​​​​[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100]
    

    答:

    ​​​print(list(range(0, 101, 2)))
    
  9. 如何取出下面set()所有的數字並加總後使用print()函式輸出。

    ​​​my_set = {28, 37, 16}
    

    答:

    ​​​my_set = {28, 37, 16}
    ​​​
    ​​​sum = 0
    ​​​for e in my_set:
    ​​​    sum += e
    ​​​    
    ​​​print(e)
    
  10. 有一個list為:['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k'],請問:
    a. 如何使用切片得到:['b', 'd', 'f', 'h', 'j']的結果?
    答:

    ​​​​src = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
    ​​​​result = src[1::2]
    ​​​​print(result) 
    

    b. 如何使用索引切片得到:['i', 'j', 'k']的結果?
    答:

    ​​​​src = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
    ​​​​result = src[-3:]
    ​​​​print(result) 
    

    c. 如何使用索引切片得到: 'c-b-a'的結果?
    答:

    ​​​​src = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
    ​​​​result = '-'.join(src[2::-1])
    ​​​​print(result) 
    

    d. 如何使用索引切片得到:'kakakaka'的結果(搭配算術運算子)?
    答:

    ​​​​src = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
    ​​​​result = ''.join(src[::-10]) * 4
    ​​​​print(result) 
    

    k為最後一個值,a為第一個值。

  11. remove()方法和del都可以用來刪除list的一個元素,請問這兩個刪除元素的方式有什麼差別?
    答:

    ​​​​remove()傳入要刪除的元素值。
    ​​​​del 後面帶要刪除的元素索引。
    
  12. 有一個字串list為:data = ['aaron', 'andy', 'apple', 'amber', 'aaron', 'abner'],其中'aaron'出現了兩次,如何從該list中移除所有的'aaron'字串?
    答:

    ​​​​data = ['aaron', 'andy', 'apple', 'amber', 'aaron', 'abner']
    ​​​​
    ​​​​result = list(set(data))
    ​​​​result.remove('aaron')
    ​​​​
    ​​​​print(result)
    
  13. 有兩個list資料,一個為學生姓名,一個為對應的每個學生成績,請問該如何將這兩個list資料配對後合併成一個dictionary,例如:
    將:

    ​​​​names = ['aaron', 'andy', 'amber', 'apple', 'abner']
    ​​​​scores = [100, 90, 60, 80, 50]
    

    變成:

    ​​​​{'aaron': 100, 'andy': 90, 'amber': 60, 'apple': 80, 'abner': 50}
    

    答:

    ​​​​names = ['aaron', 'andy', 'amber', 'apple', 'abner']
    ​​​​scores = [100, 90, 60, 80, 50]
    ​​​​
    ​​​​result = dict(zip(names, scores))
    ​​​​
    ​​​​print(result)
    
  14. 如何用一行程式碼,就將data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]就將這個list的第一個植根最後一個值分別存放到firstlast變數當中?
    答:

    ​​​​data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    ​​​​first, *temp, last = data
    ​​​​
    ​​​​print(first, last)
    

    first將會是0,last為9