没事撸点数据分析——python基础(1)

  用python做数据分析,主要是因为python本身语言追求的一个就是偷懒以及丰富的库支持。IDE我们使用Annoconda的jupyter notebook,python3.

Python: 判断:

a=10
if(a>5):
    print("this numble is greater than five")
elif(a<5):
    print("this numble is less than five")

Python 循环:python中有两种循环方式,分别是for .. in...循环(这里经常使用到range函数用于生成数字序列)以及While循环

题:输出1+2+3+...+100

这一题,如果不嫌弃手酸的话,其实可以这么写 print(1+2+3+...+100),但是想偷懒,就是用循环吧。

sum_for=0
for i in range(101):
    sum_for=sum_for+i
print("for:",sum_for)

i=0
sum_while=0
while(i<101):
    sum_while=sum_while+i
    i=i+1
print("while:",sum_while)

Python 容器:

Python中最重要的几种容器:列表,集合,字典,元组,这里面同时会介绍一个重要的概念:切片。

列表,列表类似于c、java等语言中的数组,可读可写,里面的内容可以重复,且由于python为弱类型语言,一个列表里可以放任何的东西,整型数字,浮点数字,字符串等等,甚至列表里面还可以放置一个列表。

list1=[123,"123",[1,2,3],123.0]
print (list1)

#列表-添加元素,这里介绍append方法以及extend方法
"""
切记:extend方法仅可接受列表,他会将列表中的每一个元素拆开放在待添加列表中
"""
list1.append(3)
print("append:",list1)
list1.extend([3])
print("extend:",list1)
list1.append([1,2,3])
print("append:",list1)
list1.extend([1,2,3])
print("extend:",list1)

切片:切片,顾名思义,就是从一个整块中切下一部分,这个在数据分析中非常重要,列表中,切片有以下几种方式

list=[1,2,3,4,5,6,7,8]

list[1:3]:取得元素list[1]  list[2]                    

list[:3]:取得元素list[0]  list[1]  list[2]  

list[::2]:按步长2,选取所有的元素:1,3,4,7

list=[1,2,3,4,5,6,7,8]
print(list[1:3])
print(list[:3])
print(list[::2])

l列表元素的删除使用pop或者del,pop自动删除最后一个元素,del需要指定删除元素的索引

list=[1,2,3,4,5]
print(list)
list.pop()
print(list)
del(list[2])
print(list)

集合,set,其与列表最大的区别在于集合中不允许出现重复元素。集合有几个重要的概念,并、交集操作。set的赋值需要借助列表。

set_a=set([1,2,3])
set_b=set([1,2])
print(set_a&set_b)
print(set_a|set_b)

字典,键值对。根据key值,直接计算得出value的存放地址,实现快速索引的方式(原理就是哈希)。每个key只可以对应一个value,当根据dic[key]索取对应的value时,如果key不存在,则程序报错。此时有两种解决方案:1、预先判断 if key in dic 2、dic.get(key),这种取值方法在key值为空时将会返回None。删除key的方法是pop。

dic={'Dralyuk':22,'John':17}
print(dic)
print(dic['John'])
print(dic.get('Tom'))
print('John' in dic)
dic.pop('John')
print('John' in dic)

元组,和列表没有太大区别,唯一区别在于元组不可写。

a=(1,2,3)
print(a[1])

这里介绍一个概念:列表生成

#要生成1,4,9,16这种数组
#method1
list=[]
for i in range(1,5):
    list.append(i*i)
print(list)
#method2:
list_2=[i*i for i in range(1,5)]
print(list_2)
#如果仅仅生成1,9呢?
list_3=[i*i for i in range(1,5) if i%2!=0]
print(list_3)
"""
这里的概念就是列表生成,通过for循环生成循环元素,for循环前面的表达式对循环元素进行操作,同时还可以通过
if对循环元素进行选择,还可以使用双重循环
"""
list_4=[i+j for i in range(3) for j in range(3)]
print(list_4)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值