大綱:
1.集合操作
2.檔案操作
3.分支語句
一.集合操作
概念:我們把一些元素的總體叫做集合
特點:明確性,無序性,互異性
與列表和元組不同,集合是無序的,也無法通過數字進行索引。
#列表的建立
a=[1,2,3,4]
b=list([1,2,3,4])
print(type
(b))
#元祖的建立
c=(1,2,3)
d=tuple([1,2,3])
print(type
(d))
#字典的建立
e=f=dict()
print(type
(f))
1.集合的建立
list0="hello"
#字串
b=set(list0)#建立->集合
print(b)
#list1=[1,5,8,9,7,6,6]#列表
a=set(list1)#建立-->集合
print(a)
#
集合的特點:
1)集合乙個非常重要的功能就是去重
2)建立集合的物件必須可hash,字串,列表,元祖,字典等
3)集合是無序的
2.集合的相關操作
以下操作結果的基準都是a,b,c的原始賦值
list1=[1,5,8,9,7,6,6]
a=set(list1)
print(a)#
list0="hello"
b=set(list0)
print(b)#
list2=[2,0,66,8,7,9]
c=set(list2)
print(c)#
print(a.intersection(c))#1.交集 #a&b
print(a.union(c))#2.並集 #a|b
print(a.difference(c))#3.差集 #a-b
print(a.issubset(c))#4.子集 false
print(a.issuperset(c))#5.父集 false
print(a.symmetric_difference(c))#對稱差集 集合a與集合b的對稱差集定義為集合a與集合b中所有不屬於a∩b的元素的集合,記為a△b
print(a.isdisjoint(c)) #判斷有沒有交集,沒有是true,有是false false
a.add(99)
print(a) #新增
a.remove(5)
print(a) #刪除
print(len(b)) #求集合長度 4
c.pop()
print(c) #隨機刪除乙個
b.discard("e")
print(b) #刪除
print("l"
in b ) #判斷是否是成員 true
print("l"
notin b ) #判斷是否是成員 false
二.檔案的基本操作
1.開啟檔案
#1.開啟檔案
f1=open("涼涼","r",encoding="utf-8")
#1.開啟並讀取檔案,此處的讀取檔案是讀取整個檔案,read(n)-讀取檔案的n個字元
f2=open("涼涼",encoding="utf-8").read()
print(f2)
#2.以列表的形式讀取檔案
f1=open("涼涼","r",encoding="utf-8")
#readlines()-逐行讀取出整個檔案的內容,以列表的形式返回結果
print(f1.readlines())
#3.迴圈檔案-----最優
for i in f1:
print(i.strip())
利用read()和readlines()方法我們只能一次性讀取出整個檔案(這裡補充一下,檔案的讀取是一次性的,讀完就不可再讀)
1)要想讀取我們想要的行數
#讀取前5行的內容
f1=open("涼涼","r",encoding="utf-8")
#利用迴圈遍歷一行一行的讀取內容,readline()-逐行讀取
for i in range(5):
print(f1.readline().strip())
#在第十行插入我想要的新內容
f1=open("涼涼","r",encoding="utf-8")
forindex,item in enumerate(f1.readlines()): #利用enumerate取得列表的下標和元素
ifindex==10:
print("--------------------")
print(item.strip())
2)只取出第六行的資料並加以修改
f=open("涼涼","r",encoding="utf8")
print(f.readlines()[5].strip()+"i like it")
#結果:前世你怎捨下i like it
3.列印進度條
flush()用來重新整理緩衝區的,即將緩衝區中的資料立刻寫入檔案,同時清空緩衝區,不需要是被動的等待輸出緩衝區寫入
import sys,time
for i in range(50):
sys.stdout.write("#")#stdout是標準輸出
time.sleep(1)
sys.stdout.flush()#重新整理
4.為了避免忘記關閉檔案,我們可以使用with的方式開啟檔案
with
open("涼涼","r",encoding="utf-8") as f:
5.關閉檔案 f.close()
6.顯示當前游標的位置f.tell(),預設在0,乙個英文本元佔1個字元,乙個中文漢字佔3個字元
7.調整游標的位置f.seek(n)
三.分支語句
1.三元運算
result=值1 if 條件 else 值2
2.if..else語句
輸入使用者名稱和密碼,通過判斷是否正確
age=int(input("age:"))
if age<30:
print("i am young")
elif age<50:
print("oh i am become old..")
else:
print("i am old")
3.while語句
count=0
while
count
<10:
count+=1
#white true:是無限迴圈的意思
4.for語句
for i in range(10):
print("loop:", i )
5.break和continue區別
//break是結束整個迴圈體,continue是結束單次迴圈
比方說:
while(x++ < 10)
printf(「%d\r\n」, x);
} 結果是輸出 1 2 就退出了整個while迴圈
但是如果使用continue
while(x++ < 10)
printf(「%d\r\n」, x);
} 結果是:1 2 4 5 6 7 8 9 10 可見他僅僅是不輸出3,因為他結束了本次迴圈
python自學之路 基礎篇(一)
1 info abc info 2 d 結果是什麼,為什麼會報錯呢?typeerror str object does not support item assignment 字串不支援字元賦值。2 如果要把上面的字串info裡面的c替換成d,要怎麼操作呢?info abc b info.repla...
python自學之路 基礎篇(三)
一 下面列表 a 1,2,3,4,5,333,11,44 輸出下面的結果 4,5,333 print a 3 6 二 有下面2個列表 a 1,2,3 b 4,5,6 用2個方法輸出下面結果 1,2,3,4,5,6 a 1 2,3 b 4 5,6 print a b a.extend b print ...
python自學之路 基礎篇(五)
1.已知字串 a aasmr3idd4bgs7dlsf9eaf 要求如下 1.1 請將a字串的大寫改為小寫,小寫改為大寫。a aasmr3idd4bgs7dlsf9eaf print a.swapcase a aasmr3idd4bgs7dlsf9eaf b for n in a if a n z ...