程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python基礎 Day2

編輯:Python

列表

構建列表

items1 = [35, 12, 99, 68, 55, 87]
items2 = ['Python', 'Java', 'Go', 'Kotlin']

list函數(創建列表對象的構造器):

items1 = list(range(1, 10))
print(items1) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
items2 = list('hello')
print(items2) # ['h', 'e', 'l', 'l', 'o']

 運算符

items1 = [35, 12, 99, 68, 55, 87]
items2 = [45, 8, 29]
# 列表的拼接
items3 = items1 + items2
print(items3) # [35, 12, 99, 68, 55, 87, 45, 8, 29]
# 列表的重復
items4 = ['hello'] * 3
print(items4) # ['hello', 'hello', 'hello']
# 列表的成員運算
print(100 in items3) # False
print('hello' in items4) # True
# 獲取列表的長度(元素個數)
size = len(items3)
print(size) # 9
# 列表的索引
print(items3[0], items3[-size]) # 35 35
items3[-1] = 100
print(items3[size - 1], items3[-1]) # 100 100
# 列表的切片
print(items3[:5]) # [35, 12, 99, 68, 55]
print(items3[4:]) # [55, 87, 45, 8, 100]
print(items3[-5:-7:-1]) # [55, 68]
print(items3[::-2]) # [100, 45, 55, 99, 35]
# 列表的比較運算
items5 = [1, 2, 3, 4]
items6 = list(range(1, 5))
# 兩個列表比較相等性比的是對應索引位置上的元素是否相等
print(items5 == items6) # True
items7 = [3, 2, 1]
# 兩個列表比較大小比的是對應索引位置上的元素的大小
print(items5 <= items7) # True

遍歷

兩種,下標和直接遍歷

for index in range(len(items)):
print(items[index])
for item in items:
print item

添加 / 刪除

items = ['Python', 'Java', 'Go', 'Kotlin']
# 使用append方法在列表尾部添加元素
items.append('Swift')
print(items) # ['Python', 'Java', 'Go', 'Kotlin', 'Swift']
# 使用insert方法在列表指定索引位置插入元素
items.insert(2, 'SQL')
print(items) # ['Python', 'Java', 'SQL', 'Go', 'Kotlin', 'Swift']
# 刪除指定的元素
items.remove('Java')
print(items) # ['Python', 'SQL', 'Go', 'Kotlin', 'Swift']
# 刪除指定索引位置的元素
items.pop(0)
items.pop(len(items) - 1)
print(items) # ['SQL', 'Go', 'Kotlin']
# 清空列表中的元素
items.clear()
print(items) # []

元素位置和次數

list.index(x, 2) //查找索引2開始的x第一次出現的下標

list.count(x) // 返回某個元素出現的次數

sort() / reverse()

item.sort()

item.reverse()

顧名思義。。

元組

結構體類似物。。

定義和使用

# 定義一個三元組
t1 = (30, 10, 55)
# 定義一個四元組
t2 = ('駱昊', 40, True, '四川成都')
# 查看變量的類型
print(type(t1), type(t2)) # <class 'tuple'> <class 'tuple'>
# 查看元組中元素的數量
print(len(t1), len(t2)) # 3 4
# 通過索引運算獲取元組中的元素
print(t1[0], t1[-3]) # 30 30
print(t2[3], t2[-1]) # 四川成都 四川成都
# 循環遍歷元組中的元素
for member in t2:
print(member)
# 成員運算
print(100 in t1) # False
print(40 in t2) # True
# 拼接
t3 = t1 + t2
print(t3) # (30, 10, 55, '駱昊', 40, True, '四川成都')
# 切片
print(t3[::3]) # (30, '駱昊', '四川成都')
# 比較運算
print(t1 == t3) # False
print(t1 >= t3) # False
print(t1 < (30, 11, 55)) # True

用處

1.打包和解包,賦值的時候如果逗號隔開多個變量,會打包成元組賦進去

# 打包
a = 1, 10, 100
print(type(a), a) # <class 'tuple'> (1, 10, 100)
# 解包
i, j, k = a
print(i, j, k) # 1 10 100

2.交換值

a, b, c = b, c, a

字符串

操作和C艹大差不差吧

主要就是字符串基本運算,增刪查改等基本操作,用的時候直接搜搜即可

集合

# 創建集合的字面量語法(重復元素不會出現在集合中)
set1 = {1, 2, 3, 3, 3, 2}
print(set1) # {1, 2, 3}
print(len(set1)) # 3
# 創建集合的構造器語法(後面會講到什麼是構造器)
set2 = set('hello')
print(set2) # {'h', 'l', 'o', 'e'}
# 將列表轉換成集合(可以去掉列表中的重復元素)
set3 = set([1, 2, 3, 3, 2, 1])
print(set3) # {1, 2, 3}
# 創建集合的生成式語法(將列表生成式的[]換成{})
set4 = {num for num in range(1, 20) if num % 3 == 0 or num % 5 == 0}
print(set4) # {3, 5, 6, 9, 10, 12, 15, 18}
# 集合元素的循環遍歷
for elem in set4:
print(elem)

交並差運算

這個比較有意思,沒想到python這麼智能

set1 = {1, 2, 3, 4, 5, 6, 7}
set2 = {2, 4, 6, 8, 10}
# 交集
print(set1 & set2) # {2, 4, 6}
# 並集
print(set1 | set2) # {1, 2, 3, 4, 5, 6, 7, 8, 10}
# 差集
print(set1 - set2) # {1, 3, 5, 7}
# 對稱差
print(set1 ^ set2) # {1, 3, 5, 7, 8, 10}

基本方法

# 創建一個空集合
set1 = set()
# 通過add方法添加元素
set1.add(33)
set1.add(55)
set1.update({1, 10, 100, 1000})
print(set1) # {33, 1, 100, 55, 1000, 10}
# 通過discard方法刪除指定元素
set1.discard(100)
set1.discard(99)
print(set1) # {1, 10, 33, 55, 1000}
# 通過remove方法刪除指定元素,建議先做成員運算再刪除
# 否則元素如果不在集合中就會引發KeyError異常
if 10 in set1:
set1.remove(10)
print(set1) # {33, 1, 55, 1000}
# pop方法可以從集合中隨機刪除一個元素並返回該元素
print(set1.pop())
# clear方法可以清空整個集合
set1.clear()
print(set1) # set()

字典

key -> value,類似哈希表吧,略了

例題:輸入一段話,統計每個英文字母出現的次數。

sentence = input('請輸入一段話: ')
counter = {}
for ch in sentence:
if 'A' <= ch <= 'Z' or 'a' <= ch <= 'z':
counter[ch] = counter.get(ch, 0) + 1
for key, value in counter.items():
print(f'字母{key}出現了{value}次.')


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved