Python字典,函數(shù),全局變量代碼解析
字典
dict1 = {'name':'han','age':18,'class':'first'}
print(dict1.keys()) #打印所有的key值
print(dict1.values()) #打印所有的values值
print("dict1['name']:",dict1['name']) #打印name相對(duì)應(yīng)的value值
print(dict1.get('name')) #通過(guò)字典的get方法得到name相對(duì)應(yīng)的value值
dict1['age']=28 #字典的修改相當(dāng)于重新賦值?。?!
dict1['address']='beijing' #字典的增加是:dict[key] = value 這樣的形式
del dict1['name'] #刪除字典中的一個(gè)元素
dict1.clear() #字典的清空,返回一個(gè)空字典
# del dict1 #刪除字典,字典就完全刪除了
字典用法注意:
1、鍵是不允許相同的,如果相同,后面的會(huì)覆蓋前面的
2、鍵是不可變的,所以只能用數(shù)字、字符串、元組來(lái)?yè)?dān)當(dāng)
dict2 = {(1,2):5,"元組":(4,5)} #字典里的元素只能用不可變的數(shù)據(jù)類(lèi)型!??!
print(dict2)
print(dict2['元組'])
print(dict2[(1,2)])
for i in dict2.keys(): #取出的數(shù)值更干凈?。。≈?jǐn)記老師教導(dǎo)
print("字典中的key值為:",i)
for j in dict2.values():
print("字典中的values值為:",j)
函數(shù)
1、函數(shù)的定義
函數(shù)是實(shí)現(xiàn)特定功能而封裝起來(lái)的一組語(yǔ)句塊,可以被用戶(hù)調(diào)用
2、函數(shù)的分類(lèi)
自定義函數(shù);預(yù)定義函數(shù)(系統(tǒng)自帶,lib自帶)
3、使用函數(shù)的好處
降低編程難度、將大問(wèn)題分解為若干小問(wèn)題、可以多次調(diào)用
4、函數(shù)語(yǔ)法
定義
def函數(shù)名字(參數(shù)):
函數(shù)體
return語(yǔ)句#不帶表達(dá)式的return相當(dāng)于返回none
調(diào)用
函數(shù)名字
以下是函數(shù)的幾種:
#定義函數(shù),函數(shù)名最好以_分割
def print_str(str):
print(str)
return
# 調(diào)用函數(shù)
print_str("調(diào)用一下")
# 函數(shù)傳遞
#所有參數(shù)在python里都是按引用傳遞
#一句話(huà):要變都變?。?!
def charge_me(mylist):
mylist.append([1,2,3,4])
print("函數(shù)內(nèi)取值:",mylist)
return
mylist = [10,20,30]
charge_me(mylist)
print("函數(shù)外取值:",mylist) #函數(shù)外和函數(shù)內(nèi)打印是相同的!??!
#函數(shù)的賦值引用
def print_info(name,age=3):
print("name",name)
print("age",age)
return
# print_info(name="xiao",age=18)
print_info(age=50,name="xiao") #python中顛倒是可以的!??!
print_info(name='haha')
#函數(shù)的不定長(zhǎng)參數(shù)
def p_info(arg1,*vartuple):
print("輸出:",arg1)
for var in vartuple:
print(var)
return
p_info(10)
p_info(70,60,50,40,30)
匿名函數(shù)lambda,了解即可
# 1、lambda只是一個(gè)表達(dá)式,而不是一個(gè)代碼塊,函數(shù)體比def簡(jiǎn)單很多。僅僅能在lambda表達(dá)式中封裝有限的邏輯
# 2、lambda[arg1[,arg2,...argn]]:expression
sum1 = lambda arg1,arg2:arg1+arg2
print("相加后的值為:",sum1(10,20))
# return語(yǔ)句
def sum2(arg1,arg2):
total = arg1+arg2
print("函數(shù)內(nèi):",total)
return total #把total去掉之后返回none
abc = sum2(10,40)
print("函數(shù)外:",abc)
#全局變量和局部變量
#全局變量比較容易出問(wèn)題,能不用就不用
total = 0
def sum3(a,b):
total = a+b
print("函數(shù)內(nèi)(局部變量)的值為:",total)
return total
# total = sum3(10,400)
sum3(20,70)
print("函數(shù)外(全局變量)的值為:",total)
count = 1
def do_st():
global count #全局變量:global
for i in (3,4,5): #循環(huán)三次
count += 1
# print(count)
do_st()
print(count)
# 思路:當(dāng)count=1時(shí)進(jìn)入循環(huán)+1并賦值給count
# 在for循環(huán)三次后為3+1=4
# count是全局變量,最后打印出的結(jié)果為4
小練習(xí)
# 不能創(chuàng)建字典的語(yǔ)句是C (字典中的元素不能以列表作為key)
# A、dict1 = {}
# B、dict2 = { 3 : 5 }
# C、dict3 = {[1,2,3]: “uestc”}
# D、dict4 = {(1,2,3): “uestc”}
#以下代碼輸出什么?輸出的是6
# 思路:原始key的值為1,
# copy給另一個(gè)字典值為1,
# 重新賦值原來(lái)的字典值為5,
# 所以相加等于6
dict1={'1':1,'2':2}
theCopy=dict1.copy()
dict1['1']=5
sum=dict1['1']+theCopy['1']
print(sum)
# 合并生成新的字典
dict1 = {3:"c", 4:"d"}
dict2 = {1:"a", 2:"b"}
dict2.update(dict1) #更新添加dict1進(jìn)dict2
print(dict2)
# 標(biāo)準(zhǔn)日期輸出
a = "20170303"
b = a[:4]
c = a[4:6] #構(gòu)思:通過(guò)列表分割的方式實(shí)現(xiàn)
d = a[6:]
print("格式化后輸出的日期是:%s年%s月%s日"%(b,c,d))
無(wú)return函數(shù),返回什么?
答:在函數(shù)中無(wú)return函數(shù),返回none
如何在一個(gè)function里面設(shè)置一個(gè)全局的變量?
答:在函數(shù)體內(nèi)定義一個(gè)全局的函數(shù)global
#隨機(jī)生成驗(yàn)證碼的兩種方式:
import random list1=[] for i in range(65,91): list1.append(chr(i)) #通過(guò)for循環(huán)遍歷asii追加到空列表中 for j in range(97,123): list1.append(chr(j)) for k in range(48,58): list1.append(chr(k)) ma = random.sample(list1,6) print(ma) #獲取到的為列表 ma = ''.join(ma) #將列表轉(zhuǎn)化為字符串 print(ma)
import random,string str1 = "0123456789" str2 = string.ascii_letters str3 = str1+str2 ma1 = random.sample(str3,6) ma1 = ''.join(ma1) print(ma1) #通過(guò)引入string模塊和random模塊使用現(xiàn)有的方法
總結(jié)
以上就是本文關(guān)于Python字典,函數(shù),全局變量代碼解析的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專(zhuān)題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
- Python 把序列轉(zhuǎn)換為元組的函數(shù)tuple方法
- Python從函數(shù)參數(shù)類(lèi)型引出元組實(shí)例分析
- python3 字符串/列表/元組(str/list/tuple)相互轉(zhuǎn)換方法及join()函數(shù)的使用
- python中的字典操作及字典函數(shù)
- 詳解python的sorted函數(shù)對(duì)字典按key排序和按value排序
- Python入門(mén)教程5. 字典基本操作【定義、運(yùn)算、常用函數(shù)】
- Python常見(jiàn)字典內(nèi)建函數(shù)用法示例
- Python 字典(Dictionary)操作詳解
- Python中字典創(chuàng)建、遍歷、添加等實(shí)用操作技巧合集
- Python字符串、元組、列表、字典互相轉(zhuǎn)換的方法
- python元組和字典的內(nèi)建函數(shù)實(shí)例詳解
相關(guān)文章
詳解python中@classmethod和@staticmethod方法
在python類(lèi)當(dāng)中,經(jīng)常會(huì)遇到@classmethod和@staticmethod這兩個(gè)裝飾器,那么到底它們的區(qū)別和作用是啥子呢?本文結(jié)合場(chǎng)景分析給大家詳細(xì)講解,感興趣的朋友跟隨小編一起看看吧2022-10-10
Python使用Selenium、PhantomJS爬取動(dòng)態(tài)渲染頁(yè)面
本文主要介紹了Python使用Selenium、PhantomJS爬取動(dòng)態(tài)渲染頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
python寫(xiě)入并獲取剪切板內(nèi)容的實(shí)例
今天小編就為大家分享一篇python寫(xiě)入并獲取剪切板內(nèi)容的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
利用Python中的輸入和輸出功能進(jìn)行讀取和寫(xiě)入的教程
這篇文章主要介紹了利用Python中的輸入和輸出功能進(jìn)行讀取和寫(xiě)入的教程,本文來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下2015-04-04
使用Python給PDF添加目錄書(shū)簽的實(shí)現(xiàn)方法
有時(shí)下載到掃描版的 PDF 是不帶書(shū)簽?zāi)夸浀?這樣閱讀起來(lái)很不方便,下面通過(guò) python 實(shí)現(xiàn)一個(gè)半自動(dòng)化添加書(shū)簽?zāi)夸浀哪_本,文中通過(guò)代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-10-10
pandas DataFrame 賦值的注意事項(xiàng)說(shuō)明(index)
這篇文章主要介紹了pandas DataFrame 賦值的注意事項(xiàng)說(shuō)明(index),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04
Python selenium的安裝和下載谷歌瀏覽器鏡像驅(qū)動(dòng)
Selenium是一個(gè)用于web自動(dòng)化測(cè)試的框架,在使用Ajax請(qǐng)求數(shù)據(jù)的頁(yè)面中,會(huì)出現(xiàn) sign ,token等密鑰,借助使用Selenium框架來(lái)實(shí)現(xiàn)數(shù)據(jù)爬取很不錯(cuò),本文給大家介紹Python selenium的安裝和下載谷歌瀏覽器鏡像驅(qū)動(dòng),需要的朋友可以參考下2022-11-11
python圖片和二進(jìn)制轉(zhuǎn)換的三種實(shí)現(xiàn)方式
本文介紹了將PIL格式、數(shù)組和圖片轉(zhuǎn)換為二進(jìn)制的不同方法,包括使用PIL庫(kù)、OpenCV和直接讀取二進(jìn)制,此外,還提到了數(shù)據(jù)傳輸中base64格式的應(yīng)用,這些信息對(duì)需要進(jìn)行圖片數(shù)據(jù)處理和轉(zhuǎn)換的開(kāi)發(fā)者非常有用2024-09-09

