萌妹子Python入门指北(五)

简介: def isprime(n): //isprime是函数名,n是需要判断的数 for i in range(2, n): if n%i == 0: //这里如果被i整除了看到不是素数了,素数的定义就是因子只有1和它本身 return False return True

这次我们来谈谈python中的函数,首先说一点,这里的函数和数学中的函数完全没有任何关系。在数学中,函数可能代表这一个数学公式,哎呀! 想想就头疼,但在程序猿的世界,函数就是实现某个功能的一段代码,比起for循环、if判断来说好理解多了。

 为啥在编程语言中要有函数这个东西,其实还是为了代码能够复用,加快你写代码的速度,降低你代码的复杂度。为了让你能更深刻的理解函数带来的好处,本文会全程贯穿上篇文章输出乘法口诀表的例子,也算是对上文的一次复习。

Round 1:输出一个乘法口诀表

for i in range(1,10):
    for j in range(1, i+1):
        print ("%d*%d=%d"%(j,i,i*j)),  
    print ""


简直完美

Round 2:输出两个乘法口诀表,简单 上面代码复制一遍就好了,我知道你肯定会怎么做。 所以我让你输出10000个乘法口诀表,难道你要复制上面这段代码10000遍吗? 其实在外层再加一个循环就好。


for x in range(1,10001):
    for i in range(1,10):
        for j in range(1, i+1):
            print ("%d*%d=%d"%(j,i,i*j)),  
        print ""


不过这里依旧没有用的函数。

Round 3:我这次不要1-9乘法口诀表,我1-5,4-9,1-8,1-7,2-6,3-7,5-7……各要一个,哈哈,崩溃了吧!!

 这次我们没法做循环,看似每次只能把最上面的代码复制一个,改巴改巴来输出x-y的乘法表,所以可能会导致代码非常长。 如果我们有一段代码专门来做这事,而且还有一个很简单的名字就好了,这就引出了函数。   


def fun(s, e):
    for i in range(s,e+1):
        for j in range(s, i+1):
            print ("%d*%d=%d"%(j,i,i*j)),  
        print ""


 这样我们就有个了一个叫fun的东西,专门来做输出从s到e的乘法表。比如我要输出从2到9的乘法表,我现在可以直接这么写了。


fun(2,9)

 原来的五行代码变成一行,而且还可以复用,我这里这个例子很简单,其实函数里的代码可以做更复杂的事。上文说了一个函数的例子,我们来说下函数的格式。

 def 这个是必须要写的,后面fun是函数名字,这个可以随便起,只要不和已有函数名和变量名冲突就行。 函数名后的()的必须的,但里面内容可有可无,也不仅限2个,多个也可以。这里面的内容可以在函数里用到。 然后就是和if while一样的格式要求,末尾必须加冒号 下一行开始必须缩进4个空格,这是python的语法要求,必须遵守,负责代码执行会出错。 下面我写一个函数的例子,改函数功能是判断一个数是否是素数(同质数)。


def isprime(n): //isprime是函数名,n是需要判断的数
    for i in range(2, n):
        if n%i == 0:      //这里如果被i整除了看到不是素数了,素数的定义就是因子只有1和它本身
            return False
    return True
目录
相关文章
|
2天前
|
数据可视化 API Python
Python零基础“圣经”!300W小白从入门到精通首选!
今天分享的这本书在让你尽快学会 Python基础知识的同时,能够编写并正确的运行程序(游戏、数据可视化、Web应用程序) 最大的特色在于,在为初学者构建完整的 Python 语言知识体系的同时,面向实际应用情境编写代码样例,而且许多样例还是 后续实践项目部分的伏笔。实践项目部分的选题经过精心设计,生动详尽 又面面俱到。相信这本书能够得到更多 Python 初学者的喜爱。
|
3天前
|
Python
小白入门必备!计科教授的Python精要参考PDF开放下载!
随着互联网产业的高速发展,在网络上早已积累了极其丰富的Python学习资料,任何人都可以基于这些资源,自学掌握 Python。 但实际上,网络上充斥的资源太多、太杂且不成体系,在没有足够的编程/工程经验之前,仅靠“看”线上资源自学,的确是一件非常困难的事。
|
3天前
|
数据可视化 API Python
豆瓣评分9.4!堪称经典的Python入门圣经,你还没看过吗?
最理想的新人入门书应该满足两个特点:第一就是内容通俗易懂;第二就是要有实战,能够让读者在学完之后知道具体怎么用。 今天给小伙伴们分享的这份Python入门手册,在为初学者构建完整的Python语言知识体系的同时,面向实际应用情境编写代码样例,而且许多样例还是后续实践项目部分的伏笔。实践项目部分的选题经过精心设计,生动详尽又面面俱到。
|
5天前
|
数据采集 运维 API
适合所有编程初学者,豆瓣评分8.6的Python入门手册开放下载!
Python是一种跨平台的计算机程序设计语言,它可以用来完成Web开发、数据科学、网络爬虫、自动化运维、嵌入式应用开发、游戏开发和桌面应用开发。 Python上手很容易,基本有其他语言编程经验的人可以在1周内学会Python最基本的内容(PS:没有基础的人也可以直接学习,速度会慢一点)
|
6天前
|
数据采集 SQL 数据可视化
使用Python和Pandas库进行数据分析的入门指南
使用Python和Pandas库进行数据分析的入门指南
69 0
|
6天前
|
Linux iOS开发 MacOS
Python入门指南
Python入门指南
27 0
|
6天前
|
数据采集 前端开发 JavaScript
Python爬虫入门
网络爬虫是自动抓取网页数据的程序,通过URL获取网页源代码并用正则表达式提取所需信息。反爬机制是网站为防止爬取数据设置的障碍,而反反爬是对这些机制的对策。`robots.txt`文件规定了网站可爬取的数据。基础爬虫示例使用Python的`urllib.request`模块。HTTP协议涉及请求和响应,包括状态码、头部和主体。`Requests`模块是Python中常用的HTTP库,能方便地进行GET和POST请求。POST请求常用于隐式提交表单数据,适用于需要发送复杂数据的情况。
16 1
|
10天前
|
机器学习/深度学习 人工智能 数据可视化
Python编程入门:从零开始探索编程的奇妙世界
这篇教程引导初学者入门Python编程,从安装Python开始,逐步讲解基本语法,如`print()`、变量、条件判断、循环以及自定义函数。文章强调了Python在数据处理、数据分析、人工智能和机器学习等领域的重要性,并鼓励学习者探索Python的广泛应用,开启编程之旅。
|
11天前
|
数据可视化 API Python
Python零基础“圣经”!300W小白从入门到精通首选!
今天分享的这本书在让你尽快学会 Python基础知识的同时,能够编写并正确的运行程序(游戏、数据可视化、Web应用程序) 最大的特色在于,在为初学者构建完整的 Python 语言知识体系的同时,面向实际应用情境编写代码样例,而且许多样例还是 后续实践项目部分的伏笔。实践项目部分的选题经过精心设计,生动详尽 又面面俱到。相信这本书能够得到更多 Python 初学者的喜爱。
小白入门必备!计算机科学教程的Python精要参考PDF开放下载!
随着互联网产业的高速发展,在网络上早已积累了极其丰富的Python学习资料,任何人都可以基于这些资源,自学掌握 Python。 但实际上,网络上充斥的资源太多、太杂且不成体系,在没有足够的编程/工程经验之前,仅靠“看”线上资源自学,的确是一件非常困难的事。