⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️
🐴作者:秋无之地🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据开发、数据分析等。
🐴欢迎小伙伴们点赞👍🏻、收藏⭐️、留言💬
上一篇文章已经跟大家介绍过《数据挖掘的学习路径》,相信大家对数据挖掘都有一个基本的认识。下面我讲一下数据分析中利器:Python基础语法。
一、数据分析用Python的原因
一提到Python,相信大家都比较熟悉了,就算不是IT行业的也略有耳闻。大家心中是不是有个问题,要学好数据分析,一定要掌握 Python 吗?答案是肯定的。下面我从三个方面给大家分析原因:
1、用过都说好
在一份关于开发语言的调查中,使用过 Python 的开发者,80% 都会把 Python 作为自己的主要语言。Python 已经成为发展最快的主流编程语言,从众多开发语言中脱颖而出,深受开发者喜爱。
2、开发者多
在数据分析领域中,使用 Python 的开发者是最多的,远超其他语言之和。
3、语言简洁,第三方库多
Python 语言简洁,有大量的第三方库,功能强大,能解决数据分析的大部分问题。
二、Python的安装以及IDE的选择
1、Python版本选择
Python 主要有两个版本: 2.7.x 和 3.x。两个版本之间存在一些差异,但并不大,它们语法不一样的地方不到 10%。那到底选择2.7.x 好?还是 3.x好呢?
版本选择的标准就是看你的项目是否会依赖于 Python2.7 的包,如果有依赖的就只能使用 Python2.7,否则你可以用 Python 3.x 开始全新的项目。
2、Python安装
Python的安装可以看我之前的一篇文章《老司机带你快速实现Python下载与安装》
3、Python IDE 选择
1. PyCharm
这是一个跨平台的 Python 开发工具,可以帮助用户在使用 Python 时提升效率,比如:调试、语法高亮、代码跳转、自动完成、智能提示等。
2. Sublime Text
SublimeText 是个著名的编辑器,Sublime Text3 基本上可以 1 秒即启动,反应速度很快。同时它对 Python 的支持也很到位,具有代码高亮、语法提示、自动完成等功能。
3. Vim
Vim 是一个简洁、高效的工具,速度很快,可以做任何事,从来不崩溃。不过 Vim 相比于 Sublime Text 上手有一定难度,配置起来有些麻烦。
4. Eclipse+PyDev
习惯使用 Java 的人一定对 Eclipse 这个 IDE 不陌生,那么使用 Eclipse+PyDev 插件会是一个很好的选择,这样熟悉 Eclipse 的开发者可以轻易上手。
三、Python基础语法
环境配置好后,我们就来快速学习几个 Python 必会的基础语法。我假设你是 Python 零基础,但已经有一些其他编程语言的基础。下面我们一一来看。
1、输入与输出
name = raw_input("What's your name?")
sum = 100+100
print('hello,%s' %name)
print('sum = %d' %sum)
raw_input 是 Python2.7 的输入函数,在 Python3.x 里可以直接使用 input,赋值给变量 name,print 是输出函数,%name 代表变量的数值,因为是字符串类型,所以在前面用的 %s 作为代替。
后面的代码讲解都基于Python3.x
这是运行结果:
What's your name?cy
hello,cy
sum = 200
2、判断语句:if … else …
if score>= 90:print('Excellent')
else:if score < 60:print('Fail')else:print('Good Job')
if … else … 是经典的判断语句,需要注意的是在 if expression 后面有个冒号,同样在 else 后面也存在冒号。
3、循环语句:for … in
sum = 0
for number in range(11):sum = sum + number
print(sum)
运行结果:
55
for 循环是一种迭代循环机制,迭代即重复相同的逻辑操作。如果规定循环的次数,我们可以使用 range 函数,它在 for 循环中比较常用。range(11) 代表从 0 到 10,不包括 11,也相当于 range(0,11),range 里面还可以增加步长,比如 range(1,11,2) 代表的是[1,3,5,7,9]。
4、循环语句: while
sum = 0
number = 1
while number < 11:sum = sum + numbernumber = number + 1
print(sum)
运行结果:
55
1 到 10 的求和也可以用 while 循环来写,这里 while 控制了循环的次数。while 循环是条件循环,在 while 循环中对于变量的计算方式更加灵活。因此 while 循环适合循环次数不确定的循环,而 for 循环的条件相对确定,适合固定次数的循环。
5、数据类型:列表、元组、字典、集合
1)列表:[]
lists = ['a','b','c']
lists.append('d')
print(lists)
print(len(lists))
lists.insert(0,'mm')
lists.pop()
print(lists)
运行结果:
['a', 'b', 'c', 'd']
4
['mm', 'a', 'b', 'c']
列表是 Python 中常用的数据结构,相当于数组,具有增删改查的功能,我们可以使用 len() 函数获得 lists 中元素的个数;使用 append() 在尾部添加元素,使用 insert() 在列表中插入元素,使用 pop() 删除尾部的元素。
2)元组:()
tuples = ('tupleA','tupleB')
print(tuples[0])
运行结果:
tupleA
元组 tuple 和 list 非常类似,但是 tuple 一旦初始化就不能修改。因为不能修改所以没有 append(), insert() 这样的方法,可以像访问数组一样进行访问,比如 tuples[0],但不能赋值。
3)字典:{}
# -*- coding: utf-8 -*
#定义一个dictionary
score = {'guanyu':95,'zhangfei':96}
#添加一个元素
score['zhaoyun'] = 98
print(score)
#删除一个元素
score.pop('zhangfei')
#查看key是否存在
print('guanyu' in score)
#查看一个key对应的值
print(score.get('guanyu'))
print(score.get('yase',99))
运行结果:
{'guanyu': 95, 'zhaoyun': 98, 'zhangfei': 96}
True
95
99
字典其实就是{key, value},多次对同一个 key 放入 value,后面的值会把前面的值冲掉,同样字典也有增删改查。增加字典的元素相当于赋值,比如 score[‘zhaoyun’] = 98,删除一个元素使用 pop,查询使用 get,如果查询的值不存在,我们也可以给一个默认值,比如 score.get(‘yase’,99)。
4)集合:{}
s = set(['a', 'b', 'c'])
s.add('d')
s.remove('b')
print(s)
print('c' in s)
运行结果:
set(['a', 'c', 'd'])
True
集合 set 和字典 dictory 类似,不过它只是 key 的集合,不存储 value。同样可以增删查,增加使用 add,删除使用 remove,查询看某个元素是否在这个集合里,使用 in。
6、注释:#
注释在 python 中使用 #,如果注释中有中文,一般会在代码前添加 # -- coding: utf-8 -。如果是多行注释,使用三个单引号,或者三个双引号,比如:
# -*- coding: utf-8 -*
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
7、引用模块 / 包:import
Python 语言中 import 的使用很简单,直接使用 import module_name 语句导入即可。这里 import 的本质是什么呢?import 的本质是路径搜索。import 引用可以是模块 module,或者包 package。
针对 module,实际上是引用一个.py 文件。而针对 package,可以采用 from … import …的方式,这里实际上是从一个目录中引用模块,这时目录结构中必须带有一个 __init__.py 文件。
# 导入一个模块
import model_name
# 导入多个模块
import module_name1,module_name2
# 导入包中指定模块
from package_name import moudule_name
# 导入包中所有模块
from package_name import *
8、函数:def
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号,在圆括号里是传进来的参数,然后通过 return 进行函数结果得反馈。
def addone(score):return score + 1
print(addone(99))
运行结果:
100
四、练习题:A+B Problem
题目:A+B
输入格式:有一系列的整数对 A 和 B,以空格分开。输出格式:对于每个整数对 A 和 B,需要给出 A 和 B 的和。
输入输出样例:
INPUT
1 5
OUTPUT
6
答案:
while True:try:#输入数据line = input()#将数据按空格分隔a = line.split()#分隔后的数据相加,再打印print(int(a[0]) + int(a[1]))except:break
五、总结
下图是Python快速入门的一个流程图,也是对本文内容的一个总结。
版权声明
本文章版权归作者所有,未经作者允许禁止任何转载、采集,作者保留一切追究的权利。