[CPyUG:39453] 如何在程序中得到函数要求的参数数目?

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

[CPyUG:39453] 如何在程序中得到函数要求的参数数目?

Bugzilla from xiaqqaix@gmail.com
只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
def f(n): return n
def f(a, b) return a + b
分别得到 1 和 2。

--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39471] Re: 如何在程序中得到函数要求的参数数目?

Yingbo Gu

在08-1-29,xiaq <[hidden email]> 写道:
只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
def f(n): return n
def f(a, b) return a + b
分别得到 1 和 2。

f.func_code.co_argcount 


--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39487] Re: 如何在程序中得到函数要求的参数数目?

Jian Qin
In reply to this post by Bugzilla from xiaqqaix@gmail.com
inspect 模块
getargspec( func)

这个函数,很好很强大

在08-1-29,xiaq <[hidden email]> 写道:
只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
def f(n): return n
def f(a, b) return a + b
分别得到 1 和 2。
--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39558] Re: 如何在程序中得到函数要求的参数数目?

Bugzilla from xiaqqaix@gmail.com
In reply to this post by Yingbo Gu
两个都可以,谢了

2008/1/30 Gu Yingbo <[hidden email]>:
> 在08-1-29,xiaq <[hidden email]> 写道:
> > 只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
> > def f(n): return n
> > def f(a, b) return a + b
> > 分别得到 1 和 2。
>
> f.func_code.co_argcount

2008/1/30 Jian Qin <[hidden email]>:
> inspect 模块
>  getargspec( func)
> 这个函数,很好很强大
> 在08-1-29,xiaq <[hidden email]> 写道:
> > 只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
> > def f(n): return n
> > def f(a, b) return a + b
> > 分别得到 1 和 2。

--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39572] Re: 如何在程序中得到函数要求的参数数目?

yrh-2
In reply to this post by Bugzilla from xiaqqaix@gmail.com
def aa(*arg):
    x = arg
    y = 0
    for i in x:
        y += i
    return y

 
在08-1-29,xiaq <[hidden email]> 写道:
只要能处理简单的情况就行,不要考虑可选参数和可变数目参数,比如
def f(n): return n
def f(a, b) return a + b
分别得到 1 和 2。
--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39573] Re: 如何在程序中得到函数要求的参数数目?

cafeeee
为什么不是这样:
def aa(*arg):
    return len(arg)


2008/1/31 yrh <[hidden email]>:
def aa(*arg):
    x = arg
    y = 0
    for i in x:
        y += i
    return y


--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39574] Re: 如何在程序中得到函数要求的参数数目?

Ronggui Huang
Both of them do not work.

On 1/31/08, cafeeee <[hidden email]> wrote:

> 为什么不是这样:
> def aa(*arg):
>     return len(arg)
>
>
> 2008/1/31 yrh <[hidden email]>:
> >
> > def aa(*arg):
> >     x = arg
> >     y = 0
> >     for i in x:
> >         y += i
> >     return y
> >
>
>
> >
>


--
HUANG Ronggui

Bachelor of Social Work, Fudan University, China

Master of sociology, Fudan University, China

Ph.D. Student , CityU of HK,
http://www.cityu.edu.hk/sa/psa_web2006/students/rdegree/huangronggui.html

--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39624] Re: 如何在程序中得到函数要求的参数数目?

Bugzilla from xiaqqaix@gmail.com
In reply to this post by cafeeee
2008/1/31 cafeeee <[hidden email]>:

> 为什么不是这样:
> def aa(*arg):
>     return len(arg)
> 2008/1/31 yrh <[hidden email]>:
> > def aa(*arg):
> >     x = arg
> >     y = 0
> >     for i in x:
> >         y += i
> >     return y

两位误解我的意思了,我是要在函数外得到函数要求的参数数目,而不是在函数内得到传递给函数的参数数目。
f.func_co.co_argcount 可以的。

--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:39649] Re: 如何在程序中得到函数要求的参数数目?

weizi-2
In reply to this post by Ronggui Huang
Mail
python-cn,你好
#!/usr/bin/env python
#coding=utf-8
def arglen(*arg):
    print len(arg)

aa = {'aa':'aa','bb':'cc','cc':'dd'}
arglen(aa,aa)
 
 
结果:
2
 
2008-02-01
----- Original Message -----
Sent: 2008-01-31, 12:35:18
Subject: [CPyUG:39574] Re: 如何在程序中得到函数要求的参数数目?

Both of them do not work.

On 1/31/08, cafeeee <[hidden email]> wrote:

> 为什么不是这样:
> def aa(*arg):
> return len(arg)
>
>
> 2008/1/31 yrh <[hidden email]>:
> >
> > def aa(*arg):
> > x = arg
> > y = 0
> > for i in x:
> > y += i
> > return y
> >
>
>
> >
>


--
HUANG Ronggui

Bachelor of Social Work, Fudan University, China

Master of sociology, Fudan University, China

Ph.D. Student , CityU of HK,
http://www.cityu.edu.hk/sa/psa_web2006/students/rdegree/huangronggui.html
--~--~---------~--~----~------------~-------~--~----~
'''邮件来自Groups "python-cn"--China Py User Group
详情: http://groups-beta.google.com/group/python-cn
发言: [hidden email]
退订: [hidden email]
维基: http://wiki.woodpecker.org.cn/moin/CPUG
珠江事务: http://groups.google.com/group/zpug
东南事务: http://groups.google.com/group/cpug-eastchina
北京事务: http://groups.google.com/group/bpug
中国事务: http://groups.google.com/group/CPUG
同质列表: http://python.cn/mailman/listinfo/python-chinese
'''
-~----------~----~----~----~------~----~------~--~---