以下代碼保存為"huiwen.py",
創(chuàng)新互聯(lián)建站主營(yíng)瑞昌網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件定制開(kāi)發(fā),瑞昌h5微信平臺(tái)小程序開(kāi)發(fā)搭建,瑞昌網(wǎng)站營(yíng)銷(xiāo)推廣歡迎瑞昌等地區(qū)企業(yè)咨詢(xún)
def HUIWEN(a:str):#回文函數(shù)
if len(a)=2:#縮進(jìn)1
return(a+a[::-1], a+a[:len(a)-1][::-1])#縮進(jìn)2
那么,在其它py文件中調(diào)用回文函數(shù)HUIWEN,則需用from huiwen import HUIWEN語(yǔ)句導(dǎo)入,如將以下代碼寫(xiě)入"huiwen.py",則直接運(yùn)行,即可調(diào)用回文函數(shù)HUIWEN。
if __name__ == "__main__":
a="str"#縮進(jìn)1
b="12Bx"#縮進(jìn)1
print(f"{a}的回文是:{HUIWEN(a)}")#縮進(jìn)1
print(f"的回文是:{HUIWEN(b)}")#縮進(jìn)1
python的內(nèi)建函數(shù)即是python自帶的函數(shù),這種函數(shù)不需要定義,并且不同的內(nèi)建函數(shù)具有不同的功能,可以直接使用。
以下是部分內(nèi)建函數(shù)用法及說(shuō)明
1、abs(),返回?cái)?shù)字的絕對(duì)值。
2、all(),如果集合中所有元素是true或集合為空集合,返回True。
3、any(),如果集合中有一項(xiàng)元素是true,返回True;空集合為False
4、ascii(), 返回一個(gè)表示對(duì)象的字符串。
5、bin(),將整數(shù)轉(zhuǎn)換為前綴為“0b”的二進(jìn)制字符串。
6、bool(),返回一個(gè)布爾值,即True或者之一False。
7、bytearray(),返回一個(gè)新的字節(jié)數(shù)組。
8、callable(對(duì)象)判斷對(duì)象參數(shù)是否可被調(diào)用(可被調(diào)用指的是對(duì)象能否使用()括號(hào)的方法調(diào)用)
9、chr(),返回表示Unicode代碼點(diǎn)為整數(shù)i的字符的字符串。與ord()函數(shù)相反。
推薦學(xué)習(xí)《python教程》
10、classmethod,將方法轉(zhuǎn)換為類(lèi)方法。
11、compile,將源代碼編譯為代碼或AST對(duì)象。代碼對(duì)象可以由exec()或執(zhí)行eval()。 source可以是普通字符串,字節(jié)字符串或AST對(duì)象。
12、dic(),創(chuàng)建一個(gè)字典
13、divmod(a,b),將兩個(gè)數(shù)作為參數(shù),并在使用整數(shù)除法時(shí)返回由商和余數(shù)組成的一對(duì)數(shù)
14、enumerate(iterable,start = 0)
enumerate是枚舉、列舉的意思
對(duì)于一個(gè)可迭代的(iterable)/可遍歷的對(duì)象(如列表、字符串),enumerate將其組成一個(gè)索引序列,利用它可以同時(shí)獲得索引和值
enumerate多用于在for循環(huán)中得到計(jì)數(shù)
15、eval,將一個(gè)字符串變?yōu)樽值?/p>
16、exec(object [, globals[, locals]])exec語(yǔ)句用來(lái)執(zhí)行儲(chǔ)存在字符串或文件中的Python語(yǔ)句
17、filter(功能,可迭代)
filter函數(shù)用于過(guò)濾序列
filter()把傳入的函數(shù)依次作用于每個(gè)元素,然后根據(jù)返回值是True還是False決定保留還是丟棄該元素。
這個(gè)問(wèn)題涉及到包和模塊管理。包名和模塊名一般是小寫(xiě)。你的文件是下面的結(jié)構(gòu),需要?jiǎng)?chuàng)建空文件 b/__init__.py,將b目錄變成package。a/a.py
12
from b.c import indexindex()
b/c.py
12
def index(): print("hello")
b/__init__.pya/a.py 里面有兩種引用方式,相對(duì)引用和絕對(duì)引用:# 如果a.py是 library,兩種引用方式都可以
1
from ..b.c import index
# 如果a.py是 executable,必須使用絕對(duì)引用
1
from b.c import index
如果使用絕對(duì)引用,需要確保b所在目錄在PYTHONPATH (sys.path)里面,比如可以這樣執(zhí)行:
1
env PYTHONPATH=. python a/a.py
Python具備動(dòng)態(tài)導(dǎo)入module并且執(zhí)行其中代碼的能力,所以你只要import你保存的東西就可以,無(wú)需中斷你當(dāng)前的代碼執(zhí)行流。
(1)主程序main.py與模塊程序mod1.py在同一目錄下。
--src
|--mod1.py
|--main.py
直接在main.py中導(dǎo)入模塊mod1.py,即 import mod1 或 from mod1 import *
(2)主程序main.py所在目錄是模塊程序mod.py所在目錄的父目錄。
--src
|--mod1.py
|--main.py
---mod2
?|--mod2.py
先需要在mod2文件夾中建立空文件__init__.py
然后在main.py中導(dǎo)入模塊mod2.py,即 import mod2.mod2 或 from mod2.mod2 import *
(3)主程序main.py導(dǎo)入上層目錄中的模塊或其他目錄(平級(jí))下的模塊。
--src
|--mod1.py
---mod2
?|--mod2.py
---sub
?|--main.py
先需要在mod2文件夾中建立空文件__init__.py,而src文件夾下不需要建立
然后進(jìn)入主程序main.py所在的路徑,執(zhí)行python main.py
在main.py中導(dǎo)入模塊mod2.py,即 import mod2.mod2 或 from mod2.mod2 import *
執(zhí)行前在main.py中加入:
import sys
sys.path.append("..")
import mod1
import mod2.mod2
nester.py 內(nèi)容如下:
import?sys
def?print_lol(the_list):
for?each_item?in?the_list?:
if?isinstance(each_item,?list):
print_lol(each_item)
else:
print(each_item)