JavaScript中,定义函数的方式如下: function abs(x) { if (x >= 0) { return x; } else { return -x; } } 上述abs()函数的定义如下: function指出这是一个函数定义: abs是函数的名称: (x)括号内列出函数的参数,多个参数以,分隔: { ... }之间的代码是函数体,可以包含若干语句,甚至可以没有任何语句. 如果没有return语句,函数执行完毕后也会返回结果,只是结果为undefined. 第二种定义函数的方…
1.*args # 位置参数,计算x2的函数 def power(x): return x * x p = power(5) print(p) # 把power(x)修改为power(x, n),用来计算xn def power(x, n): s = 1 while n > 0: n = n - 1 s = s * x return s p1 = power(5, 2) p2 = power(5, 3) print(p1) print(p2) # 默认参数 # 使用默认参数有什么好处?最大的好处…
https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 目录 Python教程 Python简介 安装Python 第一个Python程序 Python基础 函数 高级特性 函数式编程 模块 面向对象编程 面向对象高级编程 错误.调试和测试 IO编程 进程和线程 正则表达式 常用内建模块 常用第三方模块 virtualenv 图形界面 网络编程 电子邮件 访问数据库 Web开发 异步I…
# 调用函数 # 可以直接从Python的官方网站查看文档: # http://docs.python.org/3/library/functions.html#abs n = abs(100) # 求绝对值的函数abs, abs()有且仅有1个参数 print(n) n1 = abs(-20) print(n1) l = max(1, 2) # max函数max()可以接收任意多个参数,并返回最大的那个 print(l) # 数据类型转换 i = int(') print(i) i1 = in…
def my_abs(x): if x >= 0: return x else: return -x print(my_abs(-99)) # 空函数 def nop(): pass # 参数检查 def my_abs(x): if not isinstance(x, (int, float)): raise TypeError("bab operand type") if x >= 0: return x else: return -x # 返回多个值 import ma…
# 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数 # 计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出: # fact(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = fact(n-1) x n # 使用递归函数的优点是逻辑简单清晰,缺点是过深的调用会导致栈溢出. def fact(n): if n==1: return 1 return n * fact(…
1. python能做什么? 可以做日常任务,比如自动备份你的MP3:可以做网站,很多著名的网站包括YouTube就是Python写的:可以做网络游戏的后台,很多在线游戏的后台都是Python开发的.总之就是能干很多很多事啦. 2. Python不能做什么? 比如写操作系统,这个只能用C语言写:写手机应用,只能用Swift/Objective-C(针对iPhone)和Java(针对Android):写3D游戏,最好用C或C++. 3.  什么是变量? 变量不仅可以为整数或浮点数,还可以是字符串,…
1.list """ Python内置的一种数据类型是列表:list. list是一种有序的集合,可以随时添加和删除其中的元素. """ classmates = ['Michael', 'Bob', 'Mary'] print('classmates', classmates) print('len(classmates)= ', len(classmates)) print('classmates[0]=', classmates[0]) p…
一.循环 1.for names = ['Michal', 'Bob', 'tracy'] for name in names: print(name) sum = 0 for x in [1, 2, 3, 4, 5, 6, 7,8,9,10]: sum = sum + x print(sum) # 打印数字 0 - 9 for x in range(10): print(x) 2.while sum = 0 n = 99 while n > 0: sum = sum + n n = n - 2…
一.判断 1.条件判断 age = 18 if age >= 18: print('your are is', age) print('adult') age = 3 if age >= 18: print('your are is', age) print('adult') elif age >= 6: print('your are is', age) print('Sarah') elif age >= 3: print('your are is', age) print('…
先睹为快 alert('我要学JavaScript!'); Run: 基本语法: 1.每个语句以;结束,不强制 2.语句块用{...} 3.//单行注释,/*...*/ 多行注释 数据类型: 1.不区分整数,浮点数,统一用number~ 以下也属于number类型~ NaN; // NaN表示Not a Number,当无法计算结果时用NaN表示Infinity; // Infinity表示无限大,当数值超过了JavaScript的Number所能表示的最大值时,就表示为Infinity 2.字…
一.创建版本库 ①初始化一个Git仓库:git init ②添加文件到Git仓库:1.git add<file> ;  2.git commit 二.时光机穿梭 ①查看工作区状态,文件是否被修改过:git status ②查看修改的内容:git diff 1.版本回退 ①HEAD:当前版本 ②HEAD^:上个版本 ③定位版本:git reset --hard commit_id ④git log:穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本 ⑤git reflog:要重返…
字符串 1.和python一样,也是用' '或" "括起来的字符表示.但多行字符串是用反引号(esc下键)``,与之相对的是Python用''' '''三引号表示: 2.转义字符:\ 3.换行符:\n 4.制表符:\t 5.多个字符串用 + 连接 6.模板字符串: ${变量}  例子: var name = '小明'; var age = 20; var message = `你好, ${name}, 你今年${age}岁了!`; alert(message); 7.操作字符串  字符…
一. 1.语法基础: (1)特别注意相等运算符==.JavaScript在设计时,有两种比较运算符: 第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果: 第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较. 由于JavaScript这个设计缺陷,不要使用==比较,始终坚持使用===比较. 百度 <input type=text onkeypress="return event.keyCode>=48&&…
条件判断  固定格式:if () { ... } else { ... } ,else可选 1.多行条件判断,通常把else if连写在一起,来增加可读性 例子: var age = 3; if (age >= 18) { alert('adult'); } else if (age >= 6) { alert('teenager'); } else { alert('kid'); } 2.if...else...语句的执行特点是二选一,在多个if...else...语句中,如果某个条件成立,…
创建版本库git add加入到暂存区git commit -m" "加入到分支 时光机穿梭git satus查看仓库的当前状态git diff file 查看修改内容 版本回退HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id.穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本.要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本. 管理修改提交后,用git di…
python排序算法 1.冒泡排序: import math def BubbleSort(list): lengthOfList = len(list) for i in range(0,lengthOfList-1): for j in xrange(i+1,lengthOfList): if list[i]>list[j]: temp = list[i] list[i] = list[j] list[j] = temp bList = [1,12,2,4,51,66,45,25,96,78…
(转自廖雪峰网站) 函数定义 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回. 我们以自定义一个求绝对值的my_abs函数为例: def my_abs(x): if x >= 0: return x else: return -x 请注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回.因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑. 如果没有re…
对于学习python的人都有这样的困惑 def foo(a=[]): a.append(5) return a Python新手希望这个函数总是返回一个只包含一个元素的列表:[5].结果却非常不同,而且非常惊人(对于新手来说): >>> foo() [5] >>> foo() [5, 5] >>> foo() [5, 5, 5] >>> foo() [5, 5, 5, 5] >>> foo() 实际上,这不是设计缺陷…
写爬虫似乎没有比用 Python 更合适了,Python 社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的 library 分分钟就可以写出一个爬虫出来,今天尝试写一个爬虫,将廖雪峰老师的 Python 教程爬下来做成 PDF 电子书方便离线阅读. 开始写爬虫前,我们先来分析一下网站的页面结构,网页的左侧是教程的目录大纲,每个 URL 对应到右边的一篇文章,右侧上方是文章的标题,中间是文章的正文部分,正文内容是我们关心的重点,我们要爬的数据就是所有网页的正文部分,下方是用户的评论区,评…
一,函数的定义与调用 定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":". def 是固定的,不能变,必须是连续的def三个字母,不能分开 def 函数名(参数): """注释:函数功能和参数说明""" 函数体 …… return 返回值 调用:函数名+() 函数的返回值:return+返回值 ,结束函数 return不带返回值相当于None 无返回值,返回一个值,返回多个值 二,函数的参数  三,函…
一.Python安装 从Python官网下载Python 3.x的安装程序,下载后双击运行并安装即可: Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的. MAC 系统一般都自带有 Python2.x版本的环境,但由于3.x版越来越普及,所以我又安装Python3.10. 我试了下,这两个版本可以同时存在并正常使用. 1-1.IDLE 编辑器 他是Python软件包自带的一个基本IDE(集成开发环境): 当我们从Python官方网站下载并安装好Python 3.x后,…
从廖雪峰老师的python教程入门的,最近在看python爬虫,入手了一下 代码比较low,没有用到多线程和ip代理池 然后呢,由于robots.txt的限定,构建了一些user-agent,并放慢的爬虫的速度,起到一些效果,可能多次抓取才能完成所有文章~~~ 仅供一些刚入门的同学参考一下........ 用到的库及工具:(自行百度) 1.BeautifulSoup4 2.pdfkit 3.requests 4.wkhtmltopdf(需添加环境变量) 代码如下: # -*- coding:ut…
任务: 看完函数这一章    已完成 2017年6月8日16:23:491.函数的作用:写较少的代码实现较多的功能,可以多次被调用.2.可见,借助抽象,我们才能不关心底层的具体计算过程,而直接在更高的层次上思考问题.3.写计算机程序也是一样,函数就是最基本的一种代码抽象的方式.4.argument是参数的意思.5.比较函数cmp(x, y)就需要两个参数,如果x<y,返回-1,如果x==y,返回0,如果x>y,返回1:6.函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当…
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. 匿名函数 通过对比可以看出,匿名函数lambda x: x * x实际上就是: def f(x): return x * x 关键字lambda表示匿名函数,冒号前面的x表示函数参数. 匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果. 用匿名函数有个好处,因为函数没有名字,不…
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. 排序算法 排序也是在程序中经常用到的算法.无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小.如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函数抽象出来. Python内置的sorted()函数就可以对list进行排序: >>…
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. Python内建了map()和reduce()函数. 我们先看map.map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. 举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个list [1, 2, 3,…
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素. 例如,在一个list中,删掉偶数,只保留奇数,可以这么写: def…
函数的参数有位置参数和关键字参数,位置参数一定要在关键字参数的前面,位置参数的优先级是高于关键字参数的,否则会报错 def my_abs(a,b): print(a) print(b) my_abs(10,1)以上函数运行结果为101上面的传入参数是典型的位置参数,我们将之更改为位置加关键字参数 def my_abs(a,b): print(a) print(b) my_abs(10,b=3)以上函数运行结果为103似乎也没问题,那我们用以下方式运行下,把关键字参数放在位置参数前面 def my…
Python的函数除了正常使用的必选参数外,还可以使用默认参数.可变参数和关键字参数. 默认参数 基本使用 默认参数就是可以给特定的参数设置一个默认值,调用函数时,有默认值得参数可以不进行赋值,如: def power(x, n=2): s=1 while n > 0: n = n - 1 s = s * x return s 这样调用power(5)时,相当于调用power(5, 2). 设置默认参数时的注意事项: 一是必选参数必须在前,默认参数在后,否则Python的解释器会报错: 二是如何…