python作为一门脚本语言,可以应用在web开发,爬虫,以及数据分析,所以这里只记录python关于数据分析相关知识。。。
Linux(Ubuntu):
apt-get install python
如果使用3.5: sudo apt-get install python3.5-dev
如果使用2.7: sudo apt-get install python-dev
macOS:
下载dmg,安装
Windows:
可视化安装,不介绍。配置环境变量
1、python 源代码可以通过编译转换成字节文件 .pyc / 优化代码.pyo
2、python用缩进来表示代码逻辑。所有代码块语句必须包含相同的缩进空白。
3、python中的标识符是区分大小写的。
4、在python里,标识符有字母、数字、下划线组成。
5、Python2中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。
6、python3中打印方法必须加括号:print()
好了,基本常识有些比较奇葩,掌握就能避免大部分低级错误。
变量也就是数据类型:
和C语言不一样,变量类型不需要提前声明,随时定义,随时销毁。
bool值True和1是一样的。
# 创建列表
list_x = [3, "hello", 1]
# 向列表中添加一个元素
list_x.append(7)
print(list_x)
# 创建元组
tuple_x = (3.0, "hello")
print (tuple_x)
# 添加元素到元组
tuple_x = tuple_x + (5.6,)
# 创建字典
goku = {"name": "Goku",
"eye_color": "brown"}
print(goku)
print(goku["name"])
# 改变键的值
goku["eye_color"] = "green"
print (goku)
# 添加键值对
goku["age"] = 24
print (goku)
控制语句有 if else/ for /while
if score >= 90 & score <= 100:
print('本次考试,成绩等级为:A')
elif score>=60 & score<90:
print("本次考试,成绩等级为:B")
else:
print("本次考试,成绩等级为:C")
s = 0
while(s <= 2):
#while s<=2 :
print('计数:', s)
s = s + 1
while True:
s+=1
if s == 6:
break
for i in range(1,11,2)
print(i)
bb = [ {"name": "mm", "age": 10},{"name": "qq", "age": 20},{"name": "hh", "age": 50} ]
for item in bb:
print(item["name"])
for i in range(len(bb)):
print(bb[i]["name"])
比如用for循环写冒泡排序:
冒泡排序:
mppx = [1,8,2,6,3,9,4,12,0,56,45]
for i in range(len(mppx)):
for j in range(i+1):
if mppx[i]<mppx[j]:
mppx[i],mppx[j]=mppx[j],mppx[i] #交互i,j顺序
print(mppx)
(5)函数
def fib(n):
if n <=2 :
return 2
else:
return fib(n-1)+fib(n-2)
print(fib(10))
(6)类和对象
字段(普通字段,静态字段)、方法(普通方法,类方法@classmethod,静态方法@staticmethod)、属性@property
• 普通字段属于对象
• 静态字段属于类
class Province:
# 静态字段
country = '中国'
def __init__(self, name):
# 普通字段
self.name = name
obj = Province('河北省')
print obj.name
Province.country
继承和多态
class Cat():
def __init__(self):
self.name = '猫'
self.age = 4
self.info = [self.name,self.age]
self.index = -1
def run(self):
print( self.name,'--在跑')
def getName(self):
return self.name
def getAge(self):
return self.age
def __iter__(self):
print('名字 年龄')
return self
def next(self):
if self.index == len(self.info)-1:
raise StopIteration
self.index += 1
return self.info[self.index]
class Bosi(Cat):
def setName(self, newName):
self.name = newName
def eat(self):
print( self.name,'--在吃')
bs = Bosi()
# 继承父类的属性和方法
print( 'bs的名字为:',bs.name)
print( 'bs的年龄为:',bs.age)
print(bs.run())
# 子类的属性和方法
bs.setName('波斯猫')
bs.eat()
# 迭代输出父类的属性
iterator = iter(bs.next,1)
for info in iterator:
print(info)
(7)异常处理
(8)文件操作
博客地址:http://blog.yoqi.me/?p=14390
学到了。