python函數(shù)內(nèi)b=b+1報(bào)錯(cuò)是因?qū)戝e(cuò)代碼。在Python中,所有代碼都是通過正確的空格排列的。無多出來空格或缺少空格,整個(gè)代碼都不會運(yùn)行,僅返回一個(gè)錯(cuò)誤函數(shù)。Python代碼遵循PEP8空白規(guī)范,每一級縮進(jìn)使用4個(gè)空格,便不會報(bào)錯(cuò)。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、網(wǎng)站建設(shè)、鹽山網(wǎng)絡(luò)推廣、小程序開發(fā)、鹽山網(wǎng)絡(luò)營銷、鹽山企業(yè)策劃、鹽山品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供鹽山建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
很高興我能為你解答
先為你普及下*args和**kwargs的知識
在python中*args的使用是在你不知道有幾個(gè)參數(shù)會傳進(jìn)函數(shù)時(shí)使用,這些任意數(shù)量的參數(shù)是被封裝進(jìn)tuple里的
而**kwargs允許你處理那些你在函數(shù)中未定義的帶命名的參數(shù),它是個(gè)字典
在你的代碼中,你傳進(jìn)的是list對象,經(jīng)過函數(shù)lowerstr的參數(shù)打包后就是這樣的:
(['Hello', 'World', 134, 'IBM', 825, 'NicE'],)
你也可以在你的函數(shù)中輸出L0即可驗(yàn)證
所以在遍歷過程中第一個(gè)ss的變量類型就是tuple,在isinstance的判斷中l(wèi)ist肯定不是str類型,所以就添加進(jìn)了你的L2的列表中了,也就是列表中有列表
要改成你要的功能很簡單
你將listStr2 = lowerstr(listStr)改成listStr2 = lowerstr(*listStr)即可
listStr2 = lowerstr(*listStr)#此處對listStr進(jìn)行解包
python小白常見錯(cuò)誤 關(guān)于函數(shù)的錯(cuò)誤 NameError: name ‘lower’ is not defined。lower為字符串內(nèi)建函數(shù),使用方法為str.lower(),內(nèi)建函數(shù)為系統(tǒng)已經(jīng)定義好的