学习笔记
未读Python 中共有 75 个内置函数,这些是 Python 自带的函数,在需要使用时可以直接调用。 下表列出了一些常用的 Python 内置函数: 函数名称 代码示例 结果 功能描述 abs x = -5abs(x) 5 求绝对值 float float(‘8.8’) 8.8 将整数或者字符串转换为浮点数 int int(8.8) 8 将浮点数截断小数部分后转换为整数或者将只包含数字的字符串转换化为整数 len len(‘你好世界’) 4 获得字符串、列表、元组、集合或字典的长度(即元素个数) max max(8,-8.8,3,32,24.5) 32 获得一组数据中最大值 min min(8,-8.8,3,32,24.5) -8.8 获得一组数据中最小值 range list(range(0,6,3)) [0,3] 产生一个可迭代对象,在此列中从0开始到6之前(即不包括6),以步长为3产生可迭代对象后利用list函数转换成列表 sum sum([8,-8.8,3,32,24.5]) 58.7 获得一组数据的和,在此列中获得列表[10,3, - ...
bool类型 Python 中的布尔类型只有两种值:True 和 False。 bool类型是数字类型,在参与数学计算时会分别转型为1,0: 1print(True + False) 逻辑运算 Python 中3个布尔操作符(and、or 和not)被用于进行逻辑运算,分别代表与、或、非三种逻辑运算: a b a and b a or b not a False False False False True False True False True True True False False True False True True True True False 运算优先级由高到低为:not,and,or。 1print(False or not False and True) 关系运算 bool类型值通常来自于关系运算的结果,下面是 Python 中包含的各种关系比较的操作符: 运算符 样例 结果 功能说明 < 5 < 4 False 小于 > 5 > 4 True 大于 <= 5 <= ...
input() 控制台输入 input()函数等待用户在键盘上输入一些文本,并按下回车键。返回一个字符串,即用户输入的文本: 12num = input()print(num * 3) 函数可以传入一个字符串参数,作为输入的提示语: 12num = float(input('请输入一个数字:'))print(num * 3) print() 控制台输出 print()函数的作用是将输入的参数打印出来,默认打印到屏幕上: 1print('hello') 函数可以同时传入多个字符串参数,它们之间默认用空格隔开打印: 1print('hello', 'world', '!') 传入关键字参数sep可以改变默认的间隔字符(默认为空格' '): 1print('hello', 'world', '!', sep='+') 函数打印结尾默认会添加换行符'\n',通过传入关键字参数end改变结尾字符: 123print( ...
学习笔记
未读获取字符串长度函数 len() len()函数可以帮助我们获取字符串长度,即字符串中字符的个数: 1print(len('Python')) 字符串的 in 和 not in 操作符 in 和not in 操作符可以用于第一个字符串(大小写敏感)是否在第二个字符串中,返回一个 bool 类型的值: 12print('Hello' in 'Hello World!')print('hello' in 'Hello World!') 字符串方法 upper()、lower() upper()和lower()字符串方法返回一个新字符串,其中原字符串的所有字母都被相应地转换为大写或小写。字符串中非字母字符保持不变。 12print('Hello World!'.upper())print('Hello World!'.lower()) 字符串方法 isX() Python中有许多判断字符串的isX()方法: isupper(),如果字符串含有字母, ...
学习笔记
未读基本概念 字符串被用来表示文本。在 Python 中,字符串是用两个双引号" "或者单引号' '括起来的一个或多个字符。当字符串较长时,也会用三引号''' '''编写多行字符串。 在 Python 中,字符串类型用关键字 str 表示(即英文单词 string 的简写)。 12hi = 'Hello World!'print(hi) 转义字符 当字符串内容中包含引号时,Python 会错误理解字符串的包含范围。 1a = 'What's your name?' 这时我们有两种方法解决问题,第一种是改用不同的引号来包裹字符串: 1a = "What's your name?" 但是这种方法有局限性,当字符串内容中有所有类型的引号时,这种方法仍不能很好地划清界限,所以我们更常用的一种方法是使用转义字符: 1a = 'What\'s your name?' 像\'这种反斜杠\加字符的形式就叫做转义字符,它们合起来表示一个字符,Python 中常用的转义字符有: ...
学习笔记
未读整型 int 在 Python 中,整型数用关键字int表示(即英文单词 integer 的简写),包括:正整数、零和负整数。整型数全部由数字构成,不包括小数部分。 Python中的整型没有取值范围的限制。 Python中的整数有4种进制表示:十进制、二进制、八进制和十六进制。例如: 1010, 99, -217 0x5d, -0X64 (0x, 0X开头表示16进制数) 0b1011, -0B100 (0b, 0B开头表示2进制数) 0o13, -0O57 (0o, 0O开头表示8进制数) 浮点型 float 在 Python 中,浮点型用关键字float表示,是由整数、小数点和小数构成的数字。 Python 中的小数存在取值范围和精度的限制。 特别大或者特别小的浮点数在 Python 中用科学计数法表示。 科学计数法使用字母 e 或者 E 作为幂的符号,以10为基数。科学计数法含义如下: <a>e<b>=a∗10b<a>e<b> = a * 10^b <a>e<b>=a∗10b 浮点数的算数运算 ...
学习笔记
未读表达式 表达式是程序设计语言中最基本的结构,包含 “值”和“运算符”,并且总是可以求值(即归约)为单个值。 数学运算符 下表列出了 Python 中的所有数学运算符: 运算符 功能说明 样例 结果 ** 指数 3 ** 3 27 % 取模/取余数 10 % 3 1 // 整除/商数取整 17 // 8 2 / 除法 22 / 8 2.75 * 乘法 2 * 5 10 - 减法 5 - 1 4 + 加法 1 + 6 7 运算的优先级也同数学一样,指数优先级最高,齐次是乘除与取模,最后是加减,同样可以通过括号改变优先级。 增强运算符 除了基本赋值运算符号 = 外,Python 中还有将不同算术运算符与基本赋值运算符号相结合在一起的高级赋值运算符(增强运算符): 运算符 样例 x的值 功能说明 += x = 2x += 3 5 加法赋值运算符,等价于x = x + 3 -= x = 6x -= 4 2 减法赋值运算符,等价于x = x - 4 *= x = 5x *= 6 30 乘法赋值运算符,等价于x = x * 6 ...
定义与赋值 在程序设计过程中,对于不需要改变且不能改变的字面值,称为常量。 变量与常量相反, 变量的值可以改变。Python 中使用变量来收集和记录数据。每个变量用一个变量名来表示,在使用前都必须赋值。语法如下所示: 1变量 = 值 如: 1Pi = 3.14 命名规则 变量的命名需要遵循以下规则: 只能是一个词。 只能包含字母、数字和下划线。 不能以数字开头。 不要使用 Python 保留字(关键字)。 常用变量的含义命名。 变量名为大小写敏感,意味着 Hello 和 hello 是两个完全不同的变量。 Python 支持多个变量同时赋值,格式为: 1变量1, 变量2 = 值1, 值2 如: 1a, b = 1, 2 这个性质还可以用于交换两个变量的值: 123a, b = 1, 2#交换变量a与变量b的值a, b = b, a
Pandas 是基于 NumPy 数组构建的,特别是基于数组的函数和不使用 for 循环的数据处理。 虽然 Pandas 采用了大量的 NumPy 编码风格,但二者最大的不同是 Pandas 是专门为处理表格和混杂数据设计的。而 NumPy 更适合处理统一的数值数组数据。 Pandas 数据结构 要使用 Pandas,首先就得熟悉它的两个主要数据结构:Series和DataFrame。 Series Series是一种类似于一维数组的对象,它由一组数据(各种 NumPy 数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据即可产生最简单的Series: 123import pandas as pdobj = pd.Series([4,7,-5,3])print(obj) Series的字符串表现形式为:索引在左边,值在右边。由于没有为数据指定索引,于是会自动创建一个 0到N-1(N为数据的长度)的整数型索引。可以通过Series的values和index属性获取其数组表示形式和索引对象: 12345import pandas as pdobj = pd.Series([4, ...
什么是爬虫 网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。 大家可以理解为在网络上爬行的一只蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛,如果它遇到自己的猎物(所需要的资源),那么它就会将其抓取下来。比如它在抓取一个网页,在这个网中他发现了一条道路,其实就是指向网页的链接,那么它就可以爬到另一张网上来获取数据。 为什么要反爬虫 反爬虫,即使用任何技术手段,阻止别人批量获取自己网站信息的一种方式。 如果不反爬虫,会有人不断的发起请求获取数据,动态服务器会有大量的异常错误或者正常的意外流量,流量被浪费在了(程序员/组织)获取数据上,而不是分发数据(给用户)上。 这对网站官方会造成极大的负面影响,所以要反爬虫。 反爬虫的手段 基于请求头 反爬虫首先是基于请求头的,爬虫程序的请求头通常与用户使用的浏览器的请求头不同,通过请求头,可以筛除很大一部分的程序请求。 基于用户行为 反爬虫手段还可以基于用户行为,对于一些异常行为 ...