⑴ python程序如何使用參數
用sys模塊,使用sys.argv接收參數,sys.argv是一個列表,第2個元素開始是傳遞進來的值,傳遞的時候用空格割開就好
import sys
for x in sys.argv:
....print(x)
⑵ Python中定義函數默認參數值的使用注意事項
4.7.1. 默認參數值
最常用的一種形式是為一個或多個參數指定默認值。這會創建一個可以使用比定義是允許的參數更少的參數調用的函數,例如:
def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):
while True:
ok = input(prompt)
if ok in ('y', 'ye', 'yes'):
return True
if ok in ('n', 'no', 'nop', 'nope'):
return False
retries = retries - 1
if retries < 0:
raise OSError('uncooperative user')
print(complaint)
這個函數可以通過幾種不同的方式調用:
只給出必要的參數:
ask_ok('Do you really want to quit?')
給出一個可選的參數:
ask_ok('OK to overwrite the file?', 2)
或者給出所有的參數:
ask_ok('OK to overwrite the file?', 2, 'Come on, only yes or no!')
這個例子還介紹了 in 關鍵字。它測定序列中是否包含某個確定的值。
默認值在函數 定義 作用域被解析,如下所示:
i = 5
def f(arg=i):
print(arg)
i = 6
f()
將會輸出 5。
重要警告: 默認值只被賦值一次。這使得當默認值是可變對象時會有所不同,比如列表、字典或者大多數類的實例。例如,下面的函數在後續調用過程中會累積(前面)傳給它的參數:
def f(a, L=[]):
L.append(a)
return L
print(f(1))
print(f(2))
print(f(3))
這將輸出:
[1]
[1, 2]
[1, 2, 3]
如果你不想讓默認值在後續調用中累積,你可以像下面一樣定義函數:
def f(a, L=None):
if L is None:
L = []
L.append(a)
return L
⑶ python參數問題
power是一個方法
power(x,n=2),代表使用power方法時,n可以不傳值,使用默認值2
即
1.可以只傳x,power(5),此時默認n=2;
2.可以傳x,n;power(3,5),讀取時n會取傳入的5
而s是方法內的變數,只在方法內有效。每次調用power()時,s都會賦值為1。
然後n每-1,就把s乘以一個x
這個方法實際上是求x的n次方
defpower(x,n=2):
s=1
whilen>0:
n=n-1
s=s*x
returns
printpower(3)
printpower(3,5)
⑷ python中指定參數問題
start,stop=0,start
與下面是等價的
temp=start
start=0
stop=temp
第一種寫法是python的一個特性,在後台做了與第二種寫法同樣的事,只是python把這些動作隱藏了,目的是讓代碼更簡潔
⑸ 怎樣使用python將參數
Python 傳參數可以理解為 C 的 const 指針(your_type* const your_variable),它所指向的對象可以被修改產生副作用,但變數本身不能修改指向其他對象。這個和 C++ 的 reference 差不多。
所以如果一定要產生 C 的修改指針指向其他對象的效果,用 list、dict 或其他自定義的 mutable 對象包裝是一個辦法,但我認為這樣是一種不良實踐。在 C 語言中用參數輸出結果有非常多的理由:
C 語言沒有 tuple,不能返回多值,除非聲明一個 struct 類型。這種情況下劃分 in 參數和 out 參數成為一種慣例
C 語言沒有異常機制,返回值一般要保留給 errno
但這些情況在 Python 中都是不存在的,所以使用非慣例用法會讓人很「驚訝」,然後這種驚訝就是陷阱了 = =~
⑹ 在python中怎麼使用自定義方法來獲取指定參數的值
將
return Settings.parm
改為
return getattr(Settings,param)
⑺ Python 命令行參數是怎麼用的啊完全不懂,望賜教。。。
importsys
a=sys.argv[1]#獲取第一個參數
b=sys.argv[2]#獲取第二個參數
printa
printb
在命令行運行:(python腳本文件路徑)空格(第一個參數)空格(第二個參數)
⑻ Python基礎實戰之函數的參數講解(三)
參數可以是任意類型。
比如可以是列表。
-------------------------------
library=['python精通','MySQL','數據分析','人工智慧']
#形參
def add_book(bookname):
library.append(bookname)
print('圖書添加成功!')
pass
def show_book(books):
for book in books:
print(book)
pass
pass
#調用函數
add_book('新概念英語')
show_book(library)
------------------------------
#輸出列表中所有大於50的數
list1=[23,45,77,88,58,10]
def get_list(list_1):
new_list=[ ]
for e in list_1:
if e>=50:
new_list.append(e)
pass
pass
print(new_list)
pass
#調用函數
get_list(list1) #[77,88,58]
------------------------------
#刪除列表中小於50的數
def remove_from_list(list_1):
n=0
while n<len(list_1): p=""> </len(list_1):>
if list_1[n]<50:
list_1.remove(list_1[n])
pass
else:
n+=1
pass
pass
print(list_1)
pass
#調用函數
remove_from_list(list1) #[77,88,58]