03数据分析

小结:集合——面向对象

集合

集合使用{},相当于字典的键没有字典的值

1、创建集合

s1 = {'张三','dsd',1}

2、集合使用

集合是一种特殊的字典,只能存储key,不能存储value,集合不能重复,且无序

添加,查询,删除,修改

s3.add('张三1')   # 添加  # 集合不会重复出现
print(s3)        # 查询
s3.remove('张三') # 删除
s3.update({1,2,3})   # 修改

3、交集、并集、差集

s11 = {11,13,16}
s22 = {13,16,88,99}

print(s11|s22)   # 交集
print(s11&s22)   # 并集
print(s22-s11)   # 差集
print(s11-s22)   # 差集

集合不能转化为字典


文件操作

文件的属性 

txt        文件 

py        python文件  

doc      word文件

xlsx      excel文件

csv       excel文件

文件的路径

绝对路径和相对路径

import os
# 创建
os.mkdir('第三阶段')
# 删除
os.rmdir('第三阶段')
# 查询
a = os.listdir()
print(a)

文件读写

\n    换行

\r     回车

\t     tab制表符

文件的读写操作

  • mode:[a,w,r]
  • a = append    追加写入
  • w = write        清空写入
  • r = read          只读
##  如何把1-1000写入到本地txt文件中
f = open('number.txt',mode='a')
for i in range(1,1001):
    f.write(str(i))
    f.write('\n')
f.close()

函数

作用:封装代码,减少代码量,使代码更具模块化,让代码看起来更整洁

def create_file(name):
    file = open(f'{name}.txt', mode='w')
    file.write(f'{name},要努力,才会有工作哦')
    file.close()
    pass
create_file('赵六') # 使用一次函数
create_file('七七') # 使用一次函数
练习

# 创建一个函数:名字是my_sum,作用:计算两个数的和
def my_sum(a,b):
    c=a+b
    print(f'{a}+{b}={c}')

my_sum(12,33)
my_sum(*[12,23])

位置参数:一旦在函数中定义了位置参数,就必须传递的数值,多or少都不行

默认参数:有默认参数,可以不传递值

可变参数:可以接受0个任意值

关键字参数:可以接受任意对参数   key-value 键值对

# 创建一个函数:名字是my_sum,作用:计算两个数的和
def my_sum(a,b):
    c=a+b
    print(f'{a}+{b}={c}')

my_sum(12,33)
my_sum(*[12,23])

# 关键字参数:可以接受任意对参数   key-value 键值对
def func3(**kwargs):
    print(kwargs)
func3(name='战法',age=23)

全局变量和局部变量

全局变量:作用域整个文件

局部变量:作用域是局部

小结:

  • 全局变量的作用域是整个文件,而局部变量的作用域是函数内部
  • 局部中可以使用全局变量 ,全局中不能使用局部变量
  • 如果非要使用函数的内部函数,则可以使用global 修饰成全局变量,再调用一次函数,即可使用。
# 变量 -- 全局变量:作用域整个文件
a = 10
b = 20


# 变量 -- 局部变量:作用域是局部
def func1():
    global a1   #  声明a1是全局变量
    a1 = 100  # a1被称为局部变量
    print(a1)
    # c1 = a1    # 会报错 ,因为外部无a1只有内边有a1
    c1 = a1 + a
def func2():
    a = 100

func1()

print(a1)

特殊函数

匿名函数: 功能:是对简单函数的简写

回调函数:把一个函数,当成参数传递到另一个函数内部,进行调用

# 简单函数
def func1(a,b):
    print(a+b)
func1(10,23)

# 匿名函数
func2 = lambda a,b:print(a+b)
func2(10,23)

匿名函数:把def改写成lambda

参数:直接写在关键字后面,省略了函数名

def a():
    print('这是函数a的代码')

def b(x):
    print('这是在b内部的参数x:',x)
    x()
b(a)

return  和 print 区别

print :打印,在终端打印内容,这个内容,并没有特殊含义,只是为了让你看到这个值是什么。

return :真真实实的给你返回一个值,这个值在接下来可以像使用变量一样去使用。

一个函数必须有return,默认返回None

def my_sum(a,b):
    print(a,b)
    return a+b

y = my_sum(10,20)
print(y+20)

异常捕获

异常捕获:可以捕获运行当中的错误,保证程序运行,不会中途退出

抛出异常:拿到不可处理的数据,应该抛出异常,让程序终止

try:
    a = 50
    list1 = [1,2,3,4,5,6,7]
    print(list1[a])  # IndexError: list index out of range
except Exception as e:
    print('发生错误')
else:
    print('没有发生错误执行的代码')
print('end!')
#  和系统出现的报错一样,不过是我们写的
status = 0
if status == 0:
    raise ValueError('抛出异常')

print(10)

面向对象基础

面向对象:以编程语言中一种抽象的概念

一切皆为对象

类:抽象的     垃圾分类   干垃圾    湿垃圾    根据实例物品的特点

编程的类,会根据不同函数的功能进行划分

对象:具体的

编程的对象,可以操作类中函数的实例 ————> 变量

函数与方法:

def study():  # 函数
    print('学习')
    return None
# 定义类
class Learn():

    def study(self):   # 这个是方法 , 方法 和 函数 的区别
        print('学习')
        return None

    def test(self):
        print('测试作业')
        return None

zhang = Learn()
zhang.test()

第一、创建一个对象

第二、通过对象调用类中的方法

class Sport():
    def sport(self):
        print('运动')
        return None

    def run(self):
        print('跑步')
        return None

Li = Sport()  # 创建一个对象
Li.run()

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值