数据分析(一)

数据分析是使用适当的方法对收集来的大量数据进行分析,帮助人们做出判断,一遍采取适当行动

数据分析的流程 提出问题->准备数据->分析数据->获得结论->成果可视化

 

数据分析是使用适当的方法对收集来的大量数据进行分析,帮助人们做出判断,一遍采取适当行动

数据分析的流程 提出问题->准备数据->分析数据->获得结论->成果可视化

 变量--名字  print("/'中文"/')print(变量)输出

python3支持中文变量名  幸运数=9

单引号双引号都是成双成对的print('Let's go!')这里的‘也认为是一半的单引号,出现了引号不匹配的现象print("Let's go!")这样不会产生误会

print(' "好好学习,天天向上" ')这样输出的是“好好学习,天天向上”   \转义字符

如何让其知道这个字符串没有结束print("    \n\

                                                                    @  \n\             加一个\才能继续换行打下一行,

                                                                  /  \\         \n")最后一行加一个\")输出有误

当你使用长字符串的时候,就不需要加上一个\才可以换行使用,长字符串Triple quoted(三引号字符串)但是要前后呼应,成双成对,使用"""   """换行的时候直接回车就可以了,不需要反斜杠

字符串可以使用加法进行拼接‘520’+‘1314’  输出5201314 

字符串可以使用惩罚进行复制print("我每天爱你三千遍"*3000)输出三千遍的我每天爱你三千遍

 

temp=input("你是谁")

在idel交互界面显示  你是谁:我是谜  (我是谜是自己回复的内容)用户输入什么temp变量的值就是什么  print(temp)输出的就是我是谜

guess=int(temp)  这里是强制类型转换

is判断两个对象的id是否相等

is not判断两个对象的id是否不相等

条件成立时执行的两条语句在同一个阵营,要缩进一致

 

随机数据的使用

import  random

random.randint(a,b)  a和b两个数是表示希望获取的随机整数的范围

random模块生成的是伪随机数,因为random1的是伪随机数,要想重现随机数,要拿到它的种子,它是将系统时间来作为随机数种子random.getstate(),使用这个可以将随机数重现一遍

 

print将时间表输出文件中

fp=open('D:/text.txt','a+')  fp是指针变量 如果没有这个文件就新建

print('helloworld'.file=fp)  将helloworld写入文件中  一定要加上file=文件名,否则无法写入

+是连接符,不能将字符串和int型进行连接,进行类型转换int转为str

int() 文字和小数类字符串,无法转化为整数     浮点数转化为整数,抹零取整

float()文字类无法转换成整数,整数转为浮点数,末尾为0

单行注释#开头直到换行结束

多行注释 是将一堆三引号之间的代码成为多行注释

中文编码声明注释 在文件的开头机上中文声明注释,用以制定源码文件的编码格式#coding:gdk  gdk是一种编码格式

python输入函数input()它的返回值类型为str 将值存储到变量里面   present=input(‘大圣想要什么样的礼物’)这个是一个提问,我们需要根据这个提示输入一个值存储到present,注意这里是str返回值

present=input('你想输入的数字是几')
present=int(present)
print(present,type(present)) 这样才是int型

默认utf-8

算术运算(**幂运算   */ //整除 %    + -)  然后是位运算(<<  >>  &  |) 然后是比较运算(> < >= <= ==  !=)最后是逻辑运算(and or =)

 

内置函数range()

range(stop)创建一个(0,stop)之间的整数序列,步长为1

range(start,stop)创建一个(start,stop)之间的整数序列,步长为1

range(start,stop,step)创建一个(start,stop)之间的整数序列,步长为step

range:不管表示的整数序列有多长,所有range对象占用的内存空间都是相同的,返回值是一个迭代器对象,所以要用一个list列表可以用来查看range对象中的整数序列

in与not in判断整数序列中是否存在(不存在)制定的整数  print('p'in'python')  返回值是True

 

for -in循环

in表示从(字符串。序列等)中依次取值,又称为遍历

循环体中不需要访问自定义变量,将自定义变量替代为下划线

for item in 'python':   #依次将字母取出赋给item
print(item)
for i in range(10):
print(i)

判断水仙花数

for item in range(100,1000)    

       ge=item%10

       shi=item//10%10

       bai=item//100

       if ge**3+shi**3+bai**3==item     #都是不加括号的,**是幂,还要注意if有缩进因为是在for循环里面的

          print(item)

print(‘二进制’,0b110110) 八进制0o166  十六进制0x76  这样在前面加上一些符号就表示进制改变了

不在变量前面加上数据类型   a=10,默认十进制   a=3.1212 默认是浮点数

浮点数存储不精确,使用浮点数存储时可能出现小数位数不确定的情况

布尔类型:用来表示真或假的值 布尔值可以转化为整数True->1   False->0  

a=true  这样表示

 

双分支结构

if  条件表达式:

    条件执行体1

else:

    条件执行体2

 

嵌套if

if  条件表达式1:

        if  内层条件表达式:

                 内层条件执行体1

        else:

                  内层条件执行体2

else:

      条件执行体

 

 

 

 

for-else  以及while-else组合  没有碰到break时执行else

 

 

列表的创建

1.使用方括号lst=['大圣','八戒']

2.调用内置函数list()  lst2=list(['hello','world',98 ])

 

 

 列表元素按顺序有序排序

索引映射唯一一个数据

列表可以存储重复数据

任意数据类型混存

根据需要动态分配和回收内存

 

 

 分为顺序的索引和逆序的索引lst2【0】和lst2【-3】都会打印输出hello

获取列表中指定元素的索引

   index()列表中有多个相同的元素,只返回相同元素中的第一个元素的索引 

    查询的元素不在列表中,会抛出ValueError

     可以在指定的start和stop之间查找

获取列表中的单个元素

    正向索引从0到1

     逆向索引-N到-1

    指定索引不存在,抛出indexError

lst=['hello','world','world',98]
print(lst.index('world'))
print(lst.index('hello',0,3))

获取列表中多个元素

    列表名[start:stop:step]        当step不写时,默认为1

    是进行切片操作,进行原列表片段的拷贝

    区间【start,stop) 不包括stop

    [:stop:step] step为正数,切片的第一个元素默认是列表的第一个元素,从start开始往后计算切片

    [start::step] step为正数,切片的最后一个元素默认是列表的最后一个元素,从start开始往后计算切片

    [:stop:step] step为负数,切片的第一个元素默认是列表的最后一个元素,从start开始往前计算切片

    [:stop:step] step为负数,切片的最后一个元素默认是列表的第一个元素,从start开始往前计算切片

   
 

列表元素的增加操作,没有添加新的列表对象,而是在原列表的基础之上

       append()在列表的末尾添加一个元素

       extend()在列表的末尾至少添加一个元素

       insert()在列表的任意位置添加一个元素

       切片  在列表的任意位置添加至少一个元素    lst[1:] =lst3   在1的位置上开始切片,没有写结束到列表的最后一个数,这样是指把lst的第一个数据的复制到新                                                                               的拷贝的lst中,把第二个以及之后的数据为lst3中的数据,原lst 的第二个数据及之后的不在新的拷贝的数据中                                                                      

     

lst=[10,20,30]
lst.append(40)
lst1=['hello','world']
lst.extend(lst1)
print(lst)
[10, 20, 30, 40, 'hello', 'world'] 将lst1作为一个元素添加到列表的尾部
lst.extend(90)这个是报错的
lst.insert(1,90)  在序列为1的位置添加90

 列表元素的删除操作

      remove()一次删除一个元素  重复元素只删除第一个  元素不存在抛出ValueError   lst.remove(列表中的元素值)

      pop()删除一个指定索引位置上的元素  指定索引位置的元素不存在抛出IndexError   不指定索引,删除列表最后一个元素

      切片     一次至少删除一个元素   new_lst=lst[1:3]  保留从序列1到2的元素 其余的删除  

                                                    如果不想要产生新的列表对象,而是删除愿列表中的内容  lst【1:3】=【】在这里将1到2上的元素用空元素取代   

      clear()清空列表   lst.clear()

      del  删除列表   del lst

列表元素的修改操作

    为指定索引元素赋予一个新值   lst[2]=100

    未指定的切片赋予一个新值      lst[2:4]=[100,200.300,400,500]  超过这个范围也完全没有问题

列表的排序操作

     常见的两种方法

      调用sort()方法,列表中的所有元素默认按照从小到大的顺序进行排序,可以指定reverse=True 进行降序排序,在原列表上发生变化

      调用内置函数sorted(),函数和方法的调用过程是不一样,可以指定reverse=True 进行降序排序,原列表不发生改变

lst=[20,40,10,44,56,2,66]
print('排序前的列表',lst,id(lst))
#开始排序调用列表对象的sort方法
lst.sort()
print('排序后升序的列表',lst,id(lst))
lst.sort(reverse=True)
print('排序后降序的列表',lst,id(lst))

lst1=[20,44,23,78,12]
print('排序后的列表',lst1,id(lst))
new_list=sorted(lst1)
print('排序后的列表',new_list,id(lst))
new_list1=sorted(lst1,reverse=True)
print('排序后的列表',new_list1,id(lst))

列表生成式(生成列表的公式)

     语法格式:[i*i  for  i  in  range(1,10)]

      表示列表元素的表达式中通常包含自定义变量  列表中最终存储的是i*1的数

lst=[i for i in range(1,10)]
print(lst)
[1, 2, 3, 4, 5, 6, 7, 8, 9] 1到9 9个元素
lst=[i*i for i in range(1,10)]
print(lst)
[1, 4, 9, 16, 25, 36, 49, 64, 81] 元素的幂


posted @   小小是  阅读(125)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示