哈哈哈哈,开通后,还是只是简单地记录了两篇SQL学习日记。果然是我任乐的风格。
最近重新捡起了一些统计分析方法,网盘资料不全,学习了一周,还得拿起大学记录的笔记,在那里看,算是捡起了一些,学多学少,算是让自己安心一丢丢,让无处安放的心找到地方。
python总是这学习一点那儿学习一点,久久捡起来用一下,没有系统地好好学习。今天就奋起,再从零捡起来一下。能坚持几天呢,哈哈哈哈,任乐任乐。
1、
Anaconda 的下载地址:https://www.anaconda.com/download/
2、
Jupyter Notebook 添加目录插件(nbextensions)
step1: 在cmd命令框中运行 pip install jupyter_contrib_nbextensions;
step2: 关闭jupyter notebook, 在cmd命令框中运行 jupyter contrib nbextension install --user --skip-running-check;
3、
python库的下载,运用镜像仓库下载,可以提高速度
1、豆瓣 pip install -i https://pypi.douban.com/simple scrapy
2、新华 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包
(哈哈哈哈,上面是自己记录在微信收藏夹的)
好了,开始好好学习!
每次打开Jupyter Notebook文件最后都要记得运行下面的代码
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = “all”
1、四则运算符:+、-、*、/
2、单行注释和多行注释的方法:
在代码的最前面输入井号“#”
选中需要注释的代码,然后按:Ctr+/
3、输出
“\”表示续行符
“\n” 表示换行符
“\t” 表示水平制表符
print('数据分析', '就业 ','python', sep='--->')
数据分析—>就业 —>python
中间分隔符:sep=" "
打印多个值,用sep设置中间分隔符, 默认为空格
结尾换行符:end=’’ "
如果你打印多次,不想一行行打印出来,想都打印在一行,可以在print()后面添加end=""。
4、变量赋值
一般情况:= (vs ==为判断符号)
增量赋值:+=、(/=、-=、*=)
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c * = a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c ** = a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
多重赋值:x=y=z=1
多元赋值:x,y,z=1,2,‘a’,*var 收集多余的值
加上括号增加可读性:(x,y,z)=(1,2,‘a’)
变量交换:x,y=y,x
(注意:变量命名不要用保留字)
import keyword #python中有keyword这么一个模块,专门用来存储python的保留字
print(keyword.kwlist) #使用print命令就可以将其打印出来
[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
5、变量判断符与is运算符
判断符“==”:
比较的是两个对象的内容(这里的内容是数值)是否相等
is运算符:
判断a和b是不是同一个对象,占用的内存地址是否相同
6、获取用户输入
input()语句可以获取一个用户输入的字符串。
a=input("猜猜我喜欢谁:")
if a=="易烊千玺":
print("嘿嘿,是呀!")
猜猜我喜欢谁:易烊千玺
嘿嘿,是呀!
1、数字(Numbers): 整数int, 浮点数float, 复数complex
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | x除以y b / a 输出结果 2 |
// | 取整除 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 幂 | 返回x的y次幂 a**b 为10的20次方【相当于pow(a,b)】, 输出结果 100000000000000000000 |
2、布尔(Booleans): True和False
运算符 | 描述 | 示例 |
---|---|---|
== | 检查两个操作数的值是否相等,如果是则条件变为真。 | 如a=3,b=3则(a == b) 为 true. |
!= | 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | 如a=1,b=3则(a != b) 为 true. |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a > b) 为 true. |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 | 如a=7,b=3则(a < b) 为 false. |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a >= b) 为 true. |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3则(a <= b) 为 true. |
- 获取类型信息
-主要是type()和isinstance()函数。#isinstance(aa,int)
-可以对用户输入的数据类型进行判断。
3、字符串
(Strings): Uniconde字符序列, 在引号内包含
方法 | 描述 |
---|---|
title() | 每个单词首字母大写 |
lower()/upper() | 全部小写/大写 |
capitalize() | 首字母大写,其余小写 |
swapcase() | 反转大小写 |
join(seq) | 以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串,相对于运算符而言,性能更佳 |
rstrip() | 删除字符串字符串末尾的空格. |
istrip() | 删除字符串开头的空格 |
strip([chars]) | 在字符串上执行 lstrip()和 rstrip() |
ljust(width[, fillchar]) | 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。 |
rjust(width,[, fillchar]) | 返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串 |
zfill (width) | 返回长度为 width 的字符串,原字符串右对齐,前面填充0 |
bytes.decode(encoding=“utf-8”, errors=“strict”) | Python3 中没有 decode 方法,但我们可以使用 bytes 对象的 decode() 方法来解码给定的 bytes 对象,这个 bytes 对象可以由 str.encode() 来编码返回。 |
len(string) | 返回字符串长度 |
center(width, fillchar) | 返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。 |
count(str, beg= 0,end=len(string)) | 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数 |
find(str, beg=0 end=len(string)) | 检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1 |
index(str, beg=0, end=len(string)) | 跟find()方法一样,只不过如果str不在字符串中会报一个异常. |
rfind(str, beg=0,end=len(string)) | 类似于 find()函数,不过是从右边开始查找. |
startswith(str, beg=0,end=len(string)) | 检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。 |
endswith(suffix, beg=0, end=len(string)) | 检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False |
max(str) | 返回字符串 str 中最大的字母。 |
min(str) | 返回字符串 str 中最小的字母。 |
lstrip() | 截掉字符串左边的空格或指定字符。 |
isalnum() | 如果字符串至少有一个字符并且所有字符都是字母或数字则返 回 True,否则返回 False |
isalpha() | 如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False |
isdigit() | 如果字符串只包含数字则返回 True 否则返回 False… |
islower() | 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False |
isnumeric() | 如果字符串中只包含数字字符,则返回 True,否则返回 False |
isspace() | 如果字符串中只包含空白,则返回 True,否则返回 False. |
istitle() | 如果字符串是标题化的(见 title())则返回 True,否则返回 False |
isupper() | 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False |
isdecimal() | 检查字符串是否只包含十进制字符,如果是返回 true,否则返回 false。 |
rindex( str, beg=0, end=len(string)) | 类似于 index(),不过是从右边开始. |
index(str, beg=0, end=len(string)) | 跟find()方法一样,只不过如果str不在字符串中会报一个异常 |
split(str="", num=string.count(str)) | num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num 个子字符串 |
replace(old, new [, max]) | 将字符串中的 str1 替换成 str2,如果 max 指定,则替换不超过 max 次。 |
splitlines([keepends]) | 按照行(’\r’, ‘\r\n’, \n’)分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。 |
translate(table, deletechars="") | 根据 str 给出的表(包含 256 个字符)转换 string 的字符, 要过滤掉的字符放到 deletechars 参数中 |
maketrans() | 创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。 |
expandtabs(tabsize=8) | 把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。 |
序列结构一般可以有以下操作:
1、列表(list): 有序的值的序列
2、元组(Tuples): 有序的值的序列且不可改变
3、字典(Dictionaries): 无序的键值对的组合
4、集合(Sets): 无序的不含重复值的序列
方法 | 含义 |
---|---|
set_01.issubset(set_02) | 测试set_01是否为set_02的子集 |
set_01.isdisjoint(set_02) | 测试set_01和set_02是否有交集,有就返回False |