写在前面:本文作者购买了《谁说菜鸟不会数据分析》-方小敏著 这本书,感觉写的非常好,遂作为日常读书笔记进行了记录。推荐使用python进行数据分析的初学者购买此书学习。
(文章中部分内容来自推荐图书《谁说菜鸟不会数据分析》方小敏 著 ,本文仅作为学习交流使用,不存在商业行为,如有侵权请联系本文作者删除,感谢!)
1.执行选中的代码:F9
2.执行全部代码:ctrl + enter
3.新建文件时使用new Python script 不要使用file
4.清理控制台的命令历史
clear
5.在代码中的命令:删除单个变量,在代码中加入运行即可
del 变量
6.在Ipython console中删除所有变量
reset Once deleted, variables cannot be recovered. Proceed (y/[n])? y
7.内容扩展:python删除所有自定义变量方法
当我们在pythonwin中创建多个变量后,通过dir()函数,可以看到所有已创建变量,这些已经创建的变量会保存在globals全局中,如果想快速删除可以使用如下脚本:
7.1脚本内容如下:
#删除clear_env.py
======================================
def __clear_env():
for key in globals().keys():
if not key.startswith("__"): # 排除系统内建函数
globals().pop(key)
======================================
7.2使用方法:拷贝脚本到d:/ 下
import sys
sys.path.append(<<SPAN style="LINE-HEIGHT: 18px; FONT-FAMILY: 宋体, 'Lucida Grande', 'Lucida sans', Verdana, Arial, sans-serif; FONT-SIZE: 13px">clear_env.py所在目录名>) #添加clear_env.py所在目录到python系统路径列表中
import clear_env #导入clear_env.py模块
clear_env.__clear_env() #执行模块函数__clear_env()清楚自定义变量
ok
7.3如果嫌麻烦可以在python命令行直接输入如下代码即可:
for key in globals().keys():
if not key.startswith("__"):
globals().pop(key)
————————————————
(参考:https://blog.csdn.net/sinat_23971513/article/details/113128509)
8.帮助文档显示
Spyder默认不显示帮助文档,若要显示通过:“View”-"Panes“-”Help“的方式打开
例如:需要查找“DataFrame”的相关帮助,可以在help标签中右上角的“Source”下拉菜单中选择“Console”项,也就是只搜索控制台引入的模块,这样可以提高效率。然后再“Object”中输入需要查找的对象名“pandas.DataFrame”。稍等片刻就可以自动得到帮助文档说明(不需要按enter)。
Here you can get help of any object by pressing Ctrl+I in front of it, either on the Editor or the Console.
9.切片的规则
规则是:大于等于【】中的开始值,小于结束值。
例如:
tel = '1350013500'
tel[0:3]
#输出的是135,而不是1350
#或者
tel[-11:-8]
#输出的也是135
如果切片的开始值不写,那么代表从首字符开始,如果切片的结束值不写,那么代表一直到结尾的字符。
tel[:3]
tel[3:]
10. python内置函数
11.模块的调入方法
12.字符型数据查找替换
startswith:用于判断字符串是否以某个文本开头
find:用于在一个字符串中查找某个文本,也就是判断某个文本是否包含在一个字符串中
find(str):查找str的索引,-1代表不存在
replace:将字符串某个文本使用一个新的文本替换
replace(old_str, new_str)
代码实例:
name = "地球是我们共同的家园-python编程使我们的生活更美好"
name.startswith("地球是我们共同的")
#Out[2]: True
name.startswith("python")
#Out[3]: False
name.find("python")
#Out[4]: 11 #11表示Python开头字母p在name字符串中的位置(注意:数字是从0开始的)
name.find("我们")
#Out[5]: 3
name.replace("python", "matlab")
#Out[7]: '地球是我们共同的家园-matlab编程使我们的生活更美好' (注意:这里的替换是复制name之后的替换,name本身并未被改写)
name
#Out[8]: '地球是我们共同的家园-python编程使我们的生活更美好'
name2 = name.replace("python", "matlab")
13.字符串格式化
name3 = "大家好,我是%s,%d岁,身高%f"
name3 %('小明',18,175.32)
'%+f'%(3.1415926)
'%+3f'%(3.1415926)
'%+15f'%(3.141592653)
'%+15.9f'%(3.141592653)
'%+-15.9f'%(3.141592653)
'%.2f%%'%(3.141592653*100)
14.变量命名规则
15. 数据结构
-
列表
age = [16,18,23]
name = ['ken','john','jem']
#访问
age[0]
age[2]
name[2]
name[3]
name[0:2]
name[0:3]
#查找:判断某个值是否在列表中
23 in age
35 in age
'jem' in name
'hah' in name
name = ['张三']
name.append('李四')
name
name1 = ['王五','赵六']
name2 = ['陈七','刘八']
name.extend(name1)
name
name.extend(name2)
修改:直接赋值即可
name[0] = '张3'
name[1:3] = ['李4','王5']#仍然是等于开始,小于结束。若开始和结束的数量是匹配的,则直接替换相应位置的值;若不匹配,则先替换相应的位置,后面多的值则直接以增加的方式插入相应位置。例如下一句代码。
name[1:3] = ['李4','王5','赵6']#替换了'李4','王5'后再增加一个'赵6',而不是替换'赵六',变成了['张3', '李4', '王5', '赵6', '赵六', '陈七', '刘八']