Python练习 02
生活随笔
收集整理的這篇文章主要介紹了
Python练习 02
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
# coding:utf-8
"""
將字符串python轉化為列表(記為lst),然后完成如下操作:
1、將字符串rust中每個字母作為獨立元素追加到lst中
2、對lst排序
3、刪除lst中的重復值
知識點:
1、用list方法可以將其他類型的數據轉換為列表;
2、列表元素追加,使用append方法,extend() 函數用于在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。
3、對列表進行排序sort方法,sort(*, key=None, reverse=False)
三個參數
*代表可選參數, 如果指定了該參數會使用該參數的方法進行排序
key:主要是用來進行比較的元素,只有一個參數,具體的函數的參數就是取自于可迭代對象中,指定可迭代對象中的一個元素來進行排序。
reverse:排序規則,reverse = True 降序, reverse = False 升序(默認)。
4、刪除列表的重復值
"""lst1 = list("python")
lst2 = list("rust")
for i in lst2:lst1.append(i)
print(lst1)lst = list("python")
lst2 ="rust"
lst.extend(lst2)
print(lst)#對列表進行排序
lst.sort()
# print(lst)
"""
刪除重復值的方法:
1、用set方法轉換成集合,集合中的元素是沒有重復的
2、用for循環
3、用列表解析的方法
"""
lst3 = list(set(lst))
print(lst3)
print(lst)lst4 = []
for i in lst:if i not in lst4:lst4.append(i)
print(lst4)lst5 = []
[lst5.append(i) for i in lst if i not in lst5]
print(lst5)
# coding: UTF-8
"""
編寫程序,實現如下功能:
1、用戶輸入國家名稱
2、打印出所輸入國家名稱及其首都
知識點:
1、獲取字典某個key的value,
1)可以通過dir[key]方法,但是如果key沒在字典中,則會報錯
2)也可以通過dir.get(key)方法獲取,這種方法如果key沒在字典中,也不會報錯
2、用戶輸入操作
3、如果用戶輸入一個異常,如何處理(這個問題后面練習再體現)
"""dir_country = {"China": "Beijing", "Mongolia": "Ulaanbaatar", "Korea": "Pyongyang", "Japan": "Tokyo"}
user_input = input("please input a country's name:")
# print("The country is {0}. \nThe capital is {1}".format(user_input, dir_country[user_input]))
print("The country is {0}. \nThe capital is {1}".format(user_input, dir_country.get(user_input)))
# coding:UTF-8
"""
有如下技術棧名稱集合:skills = {"Python", "R", "SQL", "Git", "Tableau", "SAS"}
假設自己的技術是:mySkills = {"Python", "R"}
判斷自己所掌握的技術是否在上述技術棧范圍之內
知識點,集合的關系和操作:
1、集合的關系:
a 包含 b :a.issuperset(b) b.issubset(a)
a 和 b 的交集:a.intersection(b) a&b
a 并 b :a.union(b) a|b
a 和 b的差集(有方向) a.difference(b) b.difference(a)
2、對集合的操作
增加元素:add(參數為元素)、update(參數為集合)
刪除元素:pop、remove、discard(和remove類似,但是如果元素不在集合,不會報錯,remove會報錯)、clear
"""
skills = {"Python", "R", "SQL", "Git", "Tableau", "SAS"}
mySkills = {"Python", "Java"}
r = mySkills.issubset(skills)
print(r)r = mySkills.intersection(skills)
print(r)
# coding:UTF-8
"""
找出以下兩個字典共有的鍵:
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
{'b': 22, 'd': 44,'e': 55,'f': 77}
知識點:
1、獲取字典的鍵keys
2、結合集合的方法求交集
"""
d1 = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
d2 = {'b': 22, 'd': 44, 'e': 55, 'f': 77}
# <class 'dict_keys'>視圖類型可以直接用&求交集
print(d1.keys() & d2.keys())# 通過集合求交集的方式實現
key1 = set(d1.keys())
key2 = set(d2.keys())
print(key1.intersection(key2))
# coding:utf-8
"""
songs ="You raise me up so i can stand on mountains You raise me up to walk on stormy seas i am strong when i am on
your shoulders You raise me up to more than i can be"
制作上述字符串的單詞表
統計每個單詞出現的頻次
知識點:
1、去重
2、統計詞頻
"""
songs ="You raise me up so i can stand on mountains You raise me up to walk on stormy seas" \" am strong when i am on your shoulders You raise me up to more than i can be"
songs_set = set(songs.split(" "))
lst = songs.split(" ")
dir0 = {}
for key in songs_set:value = lst.count(key)# dir0.update({key: value})dir0[key] = value
print(songs_set)
print(dir0)
總結
以上是生活随笔為你收集整理的Python练习 02的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 美光科技面试经验总结(2017-1-6)
- 下一篇: demo:飞机大战游戏 python小项