本节主要介绍函数,但是函数是由操作组成的。那么就分为两部,一部分为操作一部分为函数。
正文
py世界中的操作。
操作
if:
在学习任何一门语言中,关系if,要关系另外一件事,那就是if是否只能判断bool,还是可以判断其他的,比如说1或者0。
1
2
|
if 1 : print ( "good" ); |
输出:good.
看了py 中if是对bool进行扩展了。
再来看:
1
2
3
4
|
if "": print ( "good" ); if "123" : print ( "123good" ); |
输出:"123good"
看了其对空字符的是一个false状态
1
2
|
if none: print ( "none" ); |
没有任何输出,那么其对none 是false状态,在这里说明一下py中没有null,只有none。
那么看下其对列表和集合的态度是怎么样的。
1
2
3
4
5
6
7
8
9
10
|
list = [] a = {}; if list : print ( "not none" ); else : print ( "none" ) if a: print ( "not none" ); else : print ( "none" ) |
返回两个none,说明其还会根据len来做判断,非常友好的一个东西。
那么在if中或和且是否是我们原来熟悉的&&还有||呢?
在这里说明一下,py的语义化太好了,直接使用and 和or 来说明。
比如说:
1
2
3
4
5
|
list = [] if 'good' in list : print ( "have good" ); elif ( 'not good' in list or 'sleep' in list ) and 'name' in list : print ( "not good" ); |
上面可以看出else if 用elif来替代。list是否包含某个字符,可以直接用in来操作。
输入:
在前面和上续中,有很多print,也就是输出,那么如何输入呢?
1
2
|
name = input ( "please say your name:" ); print (name); |
输入和输出:
1
2
|
please say your name: 11 11 |
在这里说明一点,就是上面name的等于号,一定要有空格,这个py的规范,否则将会出现异常。
其他一些操作:
while 和其他语言一样,但是得记得while后面加:,例如:
1
2
|
while true: pass |
函数
在很多语言中,函数都是非常关键的东西,因为你不可能一行写到尾。
1
2
3
|
def printname(firstname,lastname): print ( "firstname:" + firstname + "lastname:" + lastname); printname( "firstname" , "lastname" ); |
输出:firstname:firstnamelastname:lastname
那么学了这么多语言,要思考的问题是py到底能不能设置参数默认值,或者能不能显示传参。
1
2
3
|
def printname(firstname,lastname): print ( "firstname:" + firstname + "lastname:" + lastname); printname(firstname = "firstname" ,lastname = "lastname" ); |
事实证明是可以显示传参的,同样也是可以有默认值的。
1
2
3
|
def printname(firstname,lastname = "tom" ): print ( "firstname:" + firstname + "lastname:" + lastname); printname(firstname = "firstname" ); |
这样就可以。现在我们发现一个问题,那就是printname 在调用的时候没有信息,那么我们需要加上注释:
1
2
3
4
5
6
7
8
9
10
11
|
def printname(firstname,lastname = "tom" ): """ printname 输出名字 args: firstname string lastname string return: none """ print ( "firstname:" + firstname + "lastname:" + lastname); printname(firstname = "firstname" ); |
那么看下什么效果:
是的,这样对于团队协作来说好太多了。
同样函数值得关注的还有是否可以传递任意数量的实参。
1
2
3
4
5
6
7
8
9
10
11
|
def printname( * name): """ printname say name args: firstname string lastname string return: none """ print ( "firstname:" + name[ 0 ] + "lastname:" + name[ 1 ]); printname( "firstname" , "lastname" ); |
这样似乎就可以了,*name,表示建立一个元组,传递任意的参数将会组成一个元组。
那么任意数量的实参是不是只能是数组呢?如果你在加一个*的话,那么你可以传递字典。
1
2
3
4
5
6
7
8
9
10
11
|
def printname( * * name): """ printname say name args: firstname string lastname string return: none """ print (name); printname(firstname = "firstname" ,lastname = "lastname" ); |
输出:{'lastname': 'lastname', 'firstname': 'firstname'}
到此这篇关于python基础入门之普通操作与函数的文章就介绍到这了,更多相关python 普通操作与函数内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.cnblogs.com/aoximin/p/14091858.html