- return
def
f1
(
x
)
:
y
=
2
**
x
# 没有return
def
f2
(
x
)
:
y
=
2
**
x
return
y
# 含有return
print
(
f1
(
2
)
,
f2
(
2
)
)
return语句退出函数,并返回一个表达式。不带参数值的return语句返回
None
2.可变参数
- 通过*来定义可变参数
-
默认会把可变参数传入一个
元祖
!
def
f
(
*
x
)
:
print
(
x
)
return
x
f
(
1
)
f
(
'a'
,
'b'
)
f
(
1
,
2
,
3
,
[
44
,
33
]
)
print
(
type
(
f
(
'a'
,
'b'
)
)
)
定义一个函数,可统计出输入任意的字符中英文字母、空格、数字和其它字符的个数 判断为是够是中英文字母时,可能吧其他字符也包括进去了
string.ascii_letters
生成26个字母,大小写都有
import
string
letter_list
=
string
.
ascii_letters
#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
print
(
letter_list
)
import
string
def
count_char
(
*
x
)
:
letter_list
=
string
.
ascii_letters
dic
=
dict
(
num_chr
=
0
,
space
=
0
,
digits
=
0
,
other
=
0
)
print
(
letter_list
,
type
(
letter_list
)
)
for
i
in
x
:
if
i
==
' '
:
dic
[
'space'
]
+=
1
elif
(
str
(
i
)
in
letter_list
)
:
dic
[
'num_chr'
]
+=
1
elif
isinstance
(
i
,
int
)
:
dic
[
'digits'
]
+=
1
else
:
dic
[
'other'
]
+=
1
return
dic
print
(
count_char
(
1
,
2
,
3
,
4
,
'd'
,
'f'
,
' '
,
'[]'
)
)