python傳遞list
❶ 求助 python怎麼將可變參數傳到列表中
可以在perfom裡面把傳遞進來的參數member 循環到一個列表裡面,然後再傳遞給another_perform
def perform (self, *member):
parmas={}
for para in memeber:
params.add(para)
another_perform("commad", list= parmas )
❷ python 怎麼傳入列表參數
那就在調用參數的時候,給它賦值一個列表
def test(ls): print "this is a list"a = [1,2,3]#調用test(a)
❸ python中輸入一個list
#-*-coding:UTF-8-*-
infos=raw_input("請輸入經緯度列表")
list_info=eval(infos)
foriinlist_info:
printi
❹ python的list值傳遞問題求助
#coding: utf-8 import re def split_on_separators(original, separators): # 這個是用正則實現的,可能不滿足要求,不過非常簡單 # return filter(lambda x:x.strip(), re.split(r"[%s]" % separators, original)) result = [original]
❺ python中使用socket編程,如何能夠通過UDP傳遞一個列表類型的數據
Python中的 list 或者 dict 都可以轉成JSON字元串來發送,接收後再轉回來。
首先
importjson
然後,把 list 或 dict 轉成 JSON
json_string=json.mps(list_or_dict)
如果你用的是Python3,這里的 json_string 會是 str 類型(即Python2的unicode類型),可能需要編碼一下:
if type(json_string) == six.text_type:
json_string = json_string.encode('UTF-8')
用socket發送過去,例如
s.sendto(json_string,address)
對方用socket接收,例如
json_string,addr=s.recvfrom(2048)
把JSON轉成 list 或 dict
list_or_dict=json.loads(json_string)
下面是個完整的例子:
client.py
#!/usr/bin/envpython
#-*-coding:UTF-8-*-
importsocket
importjson
importsix
address=('127.0.0.1',31500)
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
mylist=[1,2,3,4,5,6,7,8,9,10]
json_string=json.mps(mylist)
iftype(json_string)==six.text_type:
json_string=json_string.encode('UTF-8')
s.sendto(json_string,address)
s.close()
server.py
#!/usr/bin/envpython
#-*-coding:UTF-8-*-
importsocket
importjson
address=('127.0.0.1',31500)
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.bind(address)
json_string,addr=s.recvfrom(2048)
mylist=json.loads(json_string)
print(mylist)
s.close()
請先運行server.py,再運行client.py
❻ python怎樣以帶下標的list作為函數參數
deffun(lst):
a=lst[1]+lst[-1]
returna
lst=range(10)#range(n)returnsalist[0,1,...,n-1]
printfun(lst)
就像上面的,直接寫就好,在定義函數的時候,並不需要指定參數類型,你傳進來是什麼就是什麼,你只需要保證傳進來的是list就好了,不然在使用下標的時候,就會報錯。
當然,為了保證程序的健壯性,你可以加一個判斷,如下:
deffun(lst):
iftype(lst)==type([]):
a=lst[1]+lst[-1]
returna
else:
print'Theargisnotalist'
lst=range(10)
printfun(lst)
❼ python 字元串 賦值給list
stra='上面那一大串自己復制'
import re
strb=re.sub(r'(\w+):',"'\g<1>':",stra)
ccc=eval(strb)
❽ python函數中傳入list為啥會這樣,這破問題卡了一整天
代碼及運行結果如圖:
從你的問題來看是一個新手,建議直接放棄2.x版本學習3.x版本。對現在的你來說用到的2與3版本之間的差異可能也就是print(如圖中所示與你代碼的差異),影響很小。
代碼解釋:
你的代碼中用A,B = inputlist,inputlist進行賦值,實際A與B都是指向了同一個內存對象,所以對其中任意一個做出修改,即修改了內存中的這個對象,造成A與B同時修改。解決方法,引入模塊中的deep()函數,保證A與B指向長的一樣但在內存中是兩個對象,這樣對其中一個修改時完全不影響到另一個。
❾ python怎麼調用list的方法
list.function()
❿ 在python的函數中,如何將列表list的一部分作為函數的參數
後面paraTestList(a[2:])中,括弧裡面的a[2:]命令是指創建了一個包含列表a的一部分的一個副本列表。具體做法是:
def
paraTestList(L):
L[0]='z'
a=['a','b','c','d']
b=a[2:]
paraTestList(b)
print(b)
具體情況如下:
1.Python的函數定義簡單但靈活度大。除了正常定義的必選參數外,還可以使用默認參數、可變參數和關鍵字參數,使得函數定義出來的介面,不但能處理復雜的參數,也可以簡化調用者的代碼。
2.默認參數可以簡化函數的調用,設置默認參數時要注意:一是必選參數在前,默認參數在後,否則Python的解釋器會報錯;二是如何設置默認參數。當函數有多個參數時,把變化大的參數放前面,變化小的參數放後面。變化小的參數就可以作為默認參數。
3.默認參數降低了函數調用的難度,而一旦需要更復雜的調用時,又可以傳遞更多的參數來實現。無論是簡單調用還是復雜調用,函數只需要定義一個。
4.有多個默認參數時,調用的時候,既可以按順序提供默認參數。
4.Python函數在定義的時候,默認參數L的值就被計算出來了,即[],因為默認參數L也是一個變數,它指向對象[],每次調用該函數,如果改變了L的內容,則下次調用時,默認參數的內容就變了,不再是函數定義時的[]了。