日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

第二阶段---python基础

發布時間:2025/4/14 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第二阶段---python基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.



文件操作

流程:

1:打開文件:? ??? ?
?? ??? ?open("")
?? ??? ?f = open('test')
?? ??? ?data = f.read(5) #讀指定個數的字符;
?? ??? ?data = f.read(5) #從光標位置 讀指定個數字符;
?? ??? ?data = f.readline() 讀取一行,包括改行換行符;
?? ??? ?data = f.readlines() # 列表結果;

?? ??? ??? ??? ?
?? ?with open("ts1") as f: 第二行有縮進;控制塊,推出控制塊,省去f.close()??? #? f = open("ts1")????? 相等;



2、操作文件:??? 讀寫; 默認r模式;

?? ??? ??? ??? ?f = open("test2",mode='a',encoding='utf8')?? ? 文件追加寫;
?? ??? ??? ??? ?f = open("test2",mode='w',encoding='utf8')?? 文件覆蓋寫;
?? ??? ??? ??? ?f = open("test2",mode='x',encoding='utf8')?? 文件提醒;有此文件;并且報錯;



?? ??? ??? ??? ?可讀,可寫模式: r+? w+ a+


?? ??? ??? ??? ?r+ 模式,追加寫;? 默認光標在開始位置;
?? ??? ??? ??? ?w+ 模式,覆蓋寫,想讀取內容;seek調整;
?? ??? ??? ??? ?a+ 模式? 光標無論在什么位置,追加位子都在最后;? 讀內容用seek調整;



*********************************************************************************************


?? ??? ??? ??? ??? ??? ??? ??? ??? ?rb ??? ?wb?? ??? ?ab



在wb模式下:字符串轉化字節串; .encode("utf8")????? 過程:

f = open("t3",mode="wb")
f.write("where is xialv 李節".encode("utf8"))
*********************************************************************************************
f=open("test","rb")? 不需要解碼過程;
b'test\nwhere is xialvwhere is xialvwhere is xialv'
*********************************************************************************************


?? ??? ??? ??? ?r?? ??? ?w?? ??? ?a


在w模式下:默認轉化
f = open("t3",mode="w",encoding="utf8")
f.write("where is xialv 李節")

*********************************************************************************************

調整光標位置:f.seek(0)?? see() 光標 按照字節走; 不同于read()方法;

打印當前光標位置: tell()



3、關閉文件:




4 、時間操作;
?? ??? ??? ?? import time
?? ??? ??? ?? time.sleep(100)
?? ??? ??? ?? f.flush()?? 立即存儲;
?? ??? ??? ??? ?
?? ??? ??? ?? import sys
?? ??? ??? ?? sys.stdout.write("hello")? 跟f一樣,跟文件一樣;屏幕輸出;


?? ??? ??? ??? ?\r\n???? \r光標移動到開頭;\n光標移動到下一行;



例子4:?? 百分比打印:


?? ??? ??? ??? ?import sys
?? ??? ??? ??? ?for i in range(101):
?? ??? ??? ??? ??? ?s="\r%d%% %s"%(i,"#"*i)
?? ??? ??? ??? ??? ?sys.stdout.write(s)
?? ??? ??? ??? ??? ?sys.stdout.flush()

?? ??? ??? ??? ??? ?import time
?? ??? ??? ??? ??? ?time.sleep(0.2)



例子1:

count=0
f = open("test")
for line in f.readlines():
?? ?if count==3:
?? ??? ?line="".join([line.strip(),"岳飛"])??????????? #''.join(a,b)
?? ?print(line.strip())
?? ?count+=1
f.close()

例子2:
import sys
for i in range(100):
??? sys.stdout.write("#")
??? sys.stdout.flush()
??? import time
??? time.sleep(0.5)


例子3:
while 1:
??? l=[]
??? m = input('pls input:').strip()
??? flag = False
??? with open("less") as f:
??????? for i in f:
??????????? if i.startswith("backend") and m in i:???? #startswith()
??????????????? flag = True
??????????????? continue
??????????? if i.startswith("backend") and flag:
??????????????? break
??????????? if flag:
??????????????? l.append(i.strip())
??????? for i in l:
??????????? print(i)

**********************************************************************************************************************************






?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?編碼:


可變類型數據:列表,字典;
不可變數據類型:整形;元組,字符串;


算術,賦值,比較,邏輯運算符; 關系運算in ,not in

*****************************************************************

pycharm右下角保存編碼方式 ;那么pychon解釋器就需要按照這種方式去解碼;
utf8當然不需要解碼方式;pychon3默認解碼方式及編碼方式為utf8,
pychon2需要申明解碼方式:encoding=utf8 pychon2編碼方式為ascii


******************************************************************
拋開執行執行程序,請問大家,文本編輯器大家都是用過吧,如果不懂是什么,那么word總用過吧,ok,當我們在word上編輯文字的時候,不管是中文還是英文,計算機都是不認識的,那么在保存之前數據是通過什么形式存在內存的呢?yes,就是unicode數據,為什么要存unicode數據,這是因為它的名字最屌:萬國碼!解釋起來就是無論英文,中文,日文,拉丁文,世界上的任何字符它都有唯一編碼對應,所以兼容性是最好的。

好,那當我們保存了存到磁盤上的數據又是什么呢?

答案是通過某種編碼方式編碼的bytes字節串。比如utf8---一種可變長編碼,很好的節省了空間;當然還有歷史產物的gbk編碼等等。于是,在我們的文本編輯器軟件都有默認的保存文件的編碼方式,比如utf8,比如gbk。當我們點擊保存的時候,這些編輯軟件已經"默默地"幫我們做了編碼工作。

那當我們再打開這個文件時,軟件又默默地給我們做了解碼的工作,將數據再解碼成unicode,然后就可以呈現明文給用戶了!所以,unicode是離用戶更近的數據,bytes是離計算機更近的數據。


*******************************************************************
python3下:默認編碼是;
字符串類型 :
?str(類型) : unicode(數據)
?bytes(類型): bytes(數據)

s="中文"? ---數據類型:str ,
s2=b"hello"

print(type(s))?????????????????????????????? str
print(type(s.encode("GBK")))?? ??? ??? ??? ? bytes

print(type(s2))?? ??? ??? ??? ??? ??? ??? ??? ? bytes
?print(type(s2.decode("utf8")))?? ??? ??? ??? ? str

bytes傳輸用的;unicode文本顯示用的;? 字節跟字符方式處理一樣;

________________________________________________________________
*******************************************************************


--------------------------------------------------------------
encoding=utf8

s="中文"
s2=u"李杰"
print type(s.decode("utf8"))???? 字符串s的類型:unicode
print type(s2.encode("utf8"))?? ? 字符串S2的類型:string


--------------------------------------------------------------------------------
ASCII 127 7個比特位? 美國;
擴展 ASCII 256個數字:8個位 拉丁;
中文擴展ascii碼 gb2312 幾千個狀態,中國
中文擴展ASCII碼 gbk?? 3.5萬個狀態; 中國;

unicode:2個字節; 16位 六萬多個狀態;---全世界狀態;
utf-8: 1-3個字節;

軟件內容存到內存的是unicode.
存到硬盤:utf-8 (unicode >> utf-8)
unicode(明文對應數字)
utf-8(二進制,對應二進制;)
________________________________________________________________---
*******************************************************************
python2下:
?字符串
1、str(類型):?? ??? ?bytes (字節數據) ?
2、unicode(類型): ?? ?unicode編碼后的二進制數據;

s="袁浩"
s2=u"李杰"
print repr(s)???????? '\xe8\x8b\x91\xe6\x98\x8a'??? utf-8編碼;字節數據;
print repr(s2)?? ??? ??? u'\u674e\u6770'????????????? unicode編碼;

?? ??? ??? ?unicode
?? ?|?? ??? ??? ?|
?? ?uftf?? ??? ?gbk
?? ?|?? ??? ??? ?|
?? ?字節數據?? ??? ?字節數據


________________________________________________________________
*******************************************************************






jk3000 >>> decode(解碼)--unicode >>> encode(編碼)--->GBK

big5

utf-8


# -*- coding:utf-8 -*-
name = "中文"
print name
# python2默認編碼是ASCii,
print [name.decode("utf-8")]
[u'\u4e2d\u6587']????? unicode


______________________________________________________________________________________
______________________________________________________________________________________




?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?字符串:


昨夜寒蛩不住鳴。
驚回千里夢,已三更。
起來獨自繞階行。
人悄悄,簾外月朧明。
白首為功名,舊山松竹老,阻歸程。
欲將心事付瑤琴。
知音少,弦斷有誰聽。
count=0
f = open("test")
for line in f.readlines():
?? ?if count==3:
?? ??? ?line="".join([line.strip(),"岳飛"])
?? ?print(line.strip())
?? ?count+=1
f.close()



name2 =" my name is {0}, i am {1} years old"
print(name2.index("is"))? >>>9????? #找字母下標;
print('10.1',isdecimal())?? ??? ??? ?#是否是正整數;
print('aA'.isalpha())?? ??? ??? ??? ?#是否是字母;
print('a'.isidentifier())?? ??? ??? ?#關鍵字;能不能定義為變量;
?print('A'.islower())?? ??? ??? ??? ?#是否是小寫;
?print('A'.isupper())?? ??? ??? ??? ?#是否是大寫;
print('123.3'.isnumeric())?? ??? ??? ?#是否是數字;不是小數;
print(name2.lstrip())?? ??? ??? ??? ?#脫左空格;或者('') ''內的內容;'my' 換行符號;
print(name2.swapcase())?? ??? ??? ??? ?#大小寫互換;
print(name2.translate(self,table))

print(name2.replace('name','NAME')) #替換;
>>> name=name.replace('my','My')
>>> name
' My name is {0}, i am {1} years old'



print(name2.join())
print('||||'.join(['a','b','c']))? #把列表拼成字符層,中間用'|||'內容隔開;
>>>a|||b|||c

print(name2.ljust(50,'-'))?? ??? ??? ?#左對齊,不夠的用‘’內的-補齊;
my name is {name},i am {age} years old~~~~~~~~~~~~
print(name2.rjust(50,'-'))?? ??? ??? ?#右對齊;
print(name2.lower())?? ??? ??? ??? ?#大寫變小寫;


name="alex"

print(name.capitalize())#首字母大寫
print(name.casefold())#大寫變小寫; ?
print(name.center(50,'-'))
print(name.count('e'))? ?
print(name.count('e'),3,7)?????? 從3開始,7位結尾內統計e的個數
print(name.endswith("LI"))?? ??? ? 以“”結尾,判斷;

name="Alex\teee li"?? ??? ??? ??? ?
print(name.expandtabs(3))?? ?????? >>>Alex?? eee Li?? ? 設置TAB健的長度;

print(name.find("e")) print(name.find("e",3)) >>>找到"e"的索引位置; 找不到返回-1;
print(name2.rfind(''))

********************************************************************



傳如下標對應的實參;
格式化 1 :?? ?name="my name is {0},i am {1} years old"
?? ??? ??? ?print(name.format("alex",22))

傳入 變量對應的字典 ,變量對應的關鍵字參數;
格式化 2 : ?? ?name2="my name is {name},i am {age} years old"
?? ??? ??? ?print(name2.format(name="alex",age=22)) 或者:
?? ??? ??? ?print(name2.format_map({'name':'alex','age':22}))


______________________________________________________________________________________
a=('a','b')
b=list(a)???? #元組變成列表list()
a=tuple(b)?? ?? #列表變成元組;
______________________________________________________________________________________




?? ??? ??? ??? ??? ??? ??? ??? ?Python -- 兩個列表的差集、并集和交集



??? if __name__ == '__main__': ?
??????? a_list = [{'a' : 1}, {'b' : 2}, {'c' : 3}, {'d' : 4}, {'e' : 5}] ?
??????? b_list = [{'a' : 1}, {'b' : 2}] ?
??????? ret_list = [item for item in a_list if item not in b_list] + [item for item in b_list if item not in a_list] ?
??????? print(ret_list) ?
?? **********************************************
??? if __name__ == '__main__': ?
??????? a_list = [1, 2, 3, 4, 5] ?
??????? b_list = [1, 4, 5] ?
??????? ret_list = list(set(a_list)^set(b_list))???? #列表差集
??????? print(ret_list) ?

ret_list = list(set(a_list).union(set(b_list)))?????? #列表并集

ret_list = list((set(a_list).union(set(b_list)))^(set(a_list)^set(b_list)))? #列表交集



______________________________________________________________________________________
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?



?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?集合操作



#集合 set 2個功能: 1、關系測試;2、去重; ?

set操作的是一個序列;
set是可變數據類型;
set集合內的元素一定三不可變數據類型;


s= set([1,3,"hello"])?? ??? ??? ??? ??? ?#列表設置集合;
s2 = {1,2,3}
print(s)
print(type(s2))
>>> <class 'set'>
?? ?{1,2,3}



linux={'a','b','c','d','e','a','alex'}
python={'sb','alex','mack','rachel','a1'}

print(linux.intersection(python))????? 交集
print(linux & python)

print(linux.difference(python))???????? 差集
print(linux - python)
print(python - linux)

print(linux.union(python))????????????? 求并集,linux內容不改變;天然去重;
print(linux | python)

print(linux.symmetric_difference(python)) #對稱差集,互相不在的打印;
print(linux ^ python)

linux.update(python)???????? ??? ??? ??? ?合并集合但是會改動linux內容
linux.add("alex")
linux.copy()
linux.difference_update(python) ?? ??? ?差集取出存入linux (不常用)
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

linux.discard()???????????????????????? 刪除; 等同 remove pop() 隨機刪除;
linux.add("a")?? ??? ??? ??? ??? ??? ??? ?增加;
linux.issubset() ?? ??? ??? ??? ??? ??? ?子集;判斷linux是不是誰的子集;

_________________________

___________________________________________________________________
?? ??? ?




?? ??? ??? ??? ??? ??? ??? ??? ??? ?三元表達式:


a=3
b=5
c = a if a < b else b

oct(9) oct八進制函數;


==========================================================================================

info={}
info = info.fromkeys([1,2,3],'key')
print(info)
----------------------------------------------------------------------------------
SQL中CONVERT函數格式:

CONVERT(data_type,expression[,style])
參數說明:

expression

是任何有效的 Microsoft? SQL Server? 表達式。。

data_type

目標系統所提供的數據類型,包括 bigint 和 sql_variant。不能使用用戶定義的數據類型。

________________________________________________________________________________




?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?列表,淺COPY



name = [1,2,3,4,['alex','rain']]????????????????????? #值存在多塊內存空間;
n2 = name.copy()
>>> print (n2)
[1, 2, 3, 4, ['alex', 'rain']]
>>> name[4][0]="ALEX LI"
>>> print(name)
[1, 6, 3, 4, ['ALEX LI', 'rain']]
>>> print(n2)
[1, 2, 3, 4, ['ALEX LI', 'rain']]




-------------------------------------------------------------------------------

?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?bool運算:
>>>bool([])
>>>False
?? ?一下情況都為False
?? ?[]
?? ?{}
?? ?()
?? ?''
?? ?0

>>>bool([1])
>>>True

type(1) is int
>>>True
type('1') is int
>>>type([])
>>><class 'list'>

%s string
%d digit
%f float

?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?格式化輸出:



name=input("name")
age=input("age")
job=input("job")
salary=input("salary")

info='''
----------------info of %s--------------------
NAME:?? %s
AGE:??? %s
JOB:??? %s
SALARY: %s
-------------------end------------------------
'''%(name,name,age,job,salary)

print(info)

####################################################################################################################################



?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?字典:




stu = {1: {'name': 'n11', 'add': 'ch1'}, 2: {'name': 'n2', 'add': 'ch2'}, 3: {'name': 'n3', 'add': 'ch3'}, 4: ['rain', 28]}
>>> stu[4].append(28)???????????????????????? 字典嵌套數組,可以append()
stu[5] = {'name':'zj','add':'ch5'}??????????? 增加key=5 的值 ;
stu[5] = {'name':'zj','add':'ch5','age':23}?? #改變key=5 的值;重新賦值;
stu.pop(key)>>> stu.pop(5)???????????????????? #刪除指定的key的值;
del stu[4]???????????????????????????????????? #刪除指定的key;
print(key in 字典)??? >>> print(5 in stu)?????? 有這個key就返回True

? 字段循環:for i ,k in stu.items():print(i,k)?? #效率很低
? for i in stu:print(i,stu[i])???????????????? #首選;打印key+values
print(stu.values())???????????????????????????? 打印values.

stu.update()?? names ={113:['rain'],118:['rains']}?? #2個字典合并;
stu.update(names)



?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?字典函數? 處理1:get()----查操作

d = {1:'b',2:'a'}
print(d[2])
v=d.get('a',None) ??? ??? ?#get("鍵值",值2)?? ,? 如果有鍵值存在就get該鍵內的value ,如果沒有,None給v賦值; ?
print(v)

?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?if 的出錯處理:(None賦值情況下;)
if not v:
?? ?pass

#遍歷:? for i in seq:???????? #seq 可以是字典,列表,元組,字典;
for i in range(1,101):
for i,v in enumerate(d):print(i,v)
for i,v in enumerate(d,1):print(i,v)? 從1開始;

# 增加; 上面有,






**********************************************************************************************************************************************
?


?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?字符串:


Substring(name_0,0,CHARINDEX('寄庫',name_0))

?substring(字符串,開始位置,長度)

CHARINDEX函數返回字符或者字符串在另一個字符串中的起始位置。CHARINDEX函數調用方法如下:
?????? CHARINDEX ( expression1 , expression2 [ , start_location ] )
?????? Expression1是要到expression2中尋找的字符中,start_location是CHARINDEX函數開始在expression2中找expression1的位置。
?????? CHARINDEX函數返回一個整數,返回的整數是要找的字符串在被找的字符串中的位置。假如CHARINDEX沒有找到要找的字符串,那么函數整數“0”。讓我們看看下面的函數命令執行的結果:
????? CHARINDEX(’SQL’, ’Microsoft SQL Server’)
????? 這個函數命令將返回在“Microsoft SQL Server”中“SQL”的起始位置,在這個例子中,CHARINDEX函數將返回“S”在“Microsoft SQL Server”中的位置11。
*********************************************************************************************************************************************************
import getpass

username = input("username:")
password = getpass.getpass("password:")
print (username,password)

name = "alex" 引號,代表字符串;
print(type(name)) <class 'str'>
input 接收的是字符串;
22
str(22) '22'
依賴關系未滿足安裝使用辦法:
?sudo apt --fix-broken install

字符編碼
數據類型;
for? ..else
ascII 碼(512 256 128 64 32 16 8 4 2 1)----unicode 萬國碼;bit=1Byte=一個字節;
1024KB=1MB=100萬字符
每個字符占8位;
unicode 4個字節;
utf-8 = 8bits 可變長編碼
英文一個字節;中文3個字節;
歐洲2個字節;
'''
多行內容
'''
'''內容不能執行,但是可以被打印; '''內容'''? 變成字符串了;

但引號''和"" 沒有任何區別;適用于單行;
name = "\t?? Alex Li;Rain wang;Jack john???? \t"
\t4個空格(tab健)
\n 換行
print(name.strip())

name.strip() #把字符串前后去掉空格;(以及\n)
name.split() #把字符串按空格分割成列表;
name.split(";")#把字符串按;分割成列表;
len(name)#計算字符串長度;

a='50;201;202;2021;203;204;205;2051;206;209;2091;211;281;282;283;284;288;285;286;511;513;289;515;517;290;2061;2062;2063;2064;2065;207;212;214'
j=0
b=a.split(";")
print(a)
print(type(b))
for i in b:
??? j +=1
print(j)
>>>33

******************************************************************


?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?列表:



names=['alex']
names2=["Jack","rain"]
names.clear()
names.extend(names2) #擴展
names.reverse() #反轉;
names.sort() #names里面的元素類型必須相同; names.sort(reverse=True) 反轉調;
>>> print(sorted([1,22,12]))????????????? #sorted()
[1, 12, 22]
>>>

[1,2,333,4].reverse()

ord("a") asc碼值
*********************************************************************************

b_list.index("wuxiao")????????????????? #查找元素的索引(下標);

b_list.count("wuxiao")????????????????? #統計wuxiao有幾個;

b_list.append("wuxiao")???????????????? #增加一個(到最后位置);
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?增加多個方法:.extend()
b_list.extend([7,8])

b_list[b_list.index('liuxiao')]='徐雨'?? #改,根據index更改元素

b_list.insert(4,'chentao')????????????? #在特定位置插入;

b_list.pop(3)?????????????????????????? #刪除指定index值;返回被刪除的值;
? eg. >>>?b_list.index('wuxiao')
????? 3
????? >>> b_list.pop(3)
????? 'wuxiao'
del b_list[1]???????????? ??? ??? ??? ??? ? #刪除下標對應的元素;
b_list.remove('zhouxiao')? ??? ??? ??? ? #默認刪除'zhouxiao' 列表里面第一個出現的元素;
b_list = []???? ??? ??? ??? ??? ??? ??? ? #推薦賦空值;

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
切片法則:顧頭不顧尾 a = ['a','b','c','d','e']
a[0] = 'a'
a[1:] = ['b','c','d','e']
a[-1] = 'e'
a[-3:] = ['c','d','e']
a[-3] = 'c'
a[:-1] = ['a','b','c','d']
a[0::2] = ['a','c','e'] #2跳過一個取值;步長=2
a[0::3] = ['a','d'] #跳過2個取值;步長=3
#####################################################################
b="zhouxiao,zhangxiao,feixiao,wuxiao,liuxiao,fenxiao,waixiao"
b_list=b.split(",")
>>>b_list
['zhouxiao', 'zhangxiao', 'feixiao', 'wuxiao', 'liuxiao', 'fenxiao', 'waixiao'
]
>>>print(len(b_list))
7
>>>print(b_list.index("wuxiao"))
3
>>>b_list[3]
'wuxiao'
#####################################################################


?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?循環:




for i in range(10):
? if i <=5:
??? print(i)
? else:
??? #break????????????? 有break跳出本層循環;
??? print("------")
***********************************

??? for i in range(10):
????? if i > 5:
??????? print(i)
????? else:
??????? continue??????? 跳出本次循環;print沒有執行;
??????? print("------")
############################################
for i in range(10):
? print(i)
? if i==5:
? break
else:????????????????????? for 循環 帶else 結束;
? print("done")?????????? #當for 循環正常結束else被執行;否則else不執行;
###################################################
count = 0
while count <100:
? print("...",count)
? count +=1
? if count ==50:
??? break
else:
? print("done..")??????????? #while 也可以有else語句,正常執行完可執行else
? ###################################################
? list2=(3,)???????????????? 必須有逗號;元組類型;
? if salary.isdigit():??????? 如果輸入的是0-9字符串類型的數字;(它是數字,只不過是字符串形式)那么認為是真!然后轉int類型;
??? salary = int(salary)
??? while True:
????? for index,item in enumerate(product_list):
????? print(index,item)

***************************************************************
a=[['a',500],['b',50],['c',600]]
>>> for i in enumerate(a):print(i)

...
(0, ['a', 500])
(1, ['b', 50])
(2, ['c', 600])
######################################################################
格式化字符串時,Python使用一個字符串作為模板。模板中有格式符,這些格式符為真實值預留位置,并說明真實數值應該呈現的格式。Python用一個tuple將多個值傳遞給模板,每個值對應一個格式符。

比如下面的例子:

print("I'm %s. I'm %d year old" % ('Vamei', 99))
***********************************************************************

一次性跳出多層循環; (方法一:)

break_flag = False

for i in range(5):
??? print("爺爺層:",i)
??? for i in range(5):
??????? if i == 3:
??????????? break_flag = True
??????????? break
??????? for i in range(10):
??????????? print("孫子層",i)
??????????? if i == 3:
??????????????? break_flag = True
??????????????? break
??????? if break_flag:
??????????? break
??? if break_flag:
??????? print("all die")
??????? break
***************************************************************************
(方法二:)

break_flag = False
count = 0
while break_flag == False:
??? print("grandfather level")
??? while break_flag == False:
??????? print("father level")
??????? while break_flag == False:
??????????? print("son level")
??????????? count +=1
??????????? if count >3:
??????????????? break_flag = True

print("go ~~~~~~~~~~~~~~~~~")

轉載于:https://www.cnblogs.com/santizhou/p/7409759.html

總結

以上是生活随笔為你收集整理的第二阶段---python基础的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。