一、python基础

字符串replace方法

  1. txt = txt.replace(s, ' ')
  2. # 光是txt.replace(s, ' ')是不会对txt产生影响的
  3. # 下面每次循环replace后,w的值是不改变的
  4. w = 'China520'
  5. for x in w:
  6. if '0' <= x <= '9':
  7. continue
  8. else:
  9. k = w.replace(x, '')
  10. print(k) # Chin520

字符串join方法

  1. li = [1, 's', '4', 'b']
  2. s = ','.join([str(each) for each in li]) # 注意必须先转成字符串列表,否则报错

如何对字典中的value进行排序

  1. words = {}
  2. for word in txt_list:
  3. words[word] = words.get(word, 0) + 1
  4. words_list = list(words.items()) # 每一个元素为(key,value)元组, 直接利用list(),这里很妙!!!
  5. words_list.sort(key=lambda x:x[1], reverse=True)
  6. # 或
  7. words_list = sorted(words_list, key=lambda x:x[1], reverse=True)

字符串全部改为小写,并将特殊字符剔除

  1. def getText():
  2. txt = open("hamlet.txt", "r").read()
  3. txt = txt.lower() # 这里不用循环
  4. for s in '!"#$%&()*+,-./:;<=>?@[\\]^_‘{|}~':
  5. txt = txt.replace(s, ' ')
  6. return txt

字符串切割split

  1. txt_list = txt.split() # 不带参数时默认用空格切割

字典update/pop方法

  1. clerkDict.update({"mobile":"18930964799","city":"shanghai"}) # 更新或新增合并到clerkDict
  2. clerkDict.pop("city") # 删除city项 这里不带参数

巧用set去重

  1. s = s.replace('\n', ' ')
  2. names = set(s.split())

巧用list()

字典转元组嵌套的列表方法:li = list(dic.items())

遍历过程中对list进行操作

  1. dat = ['1', '2', '3', '0', '0', '0']
  2. for item in dat:
  3. if item == '0':
  4. dat.remove(item) # 每次只删除第一次匹配的
  5. print(dat)
  6. '''
  7. ['1', '2', '3', '0']
  8. '''

eval()的用法: 用来执行一个字符串表达式,并返回表达式的值。

  1. input = input()
  2. input_dict = eval(input) # 这里不需要再加dict()
  3. >>>x = 7
  4. >>> eval( '3 * x' )
  5. 21
  6. >>> eval('pow(2,2)')
  7. 4
  8. >>> eval('2 + 2')
  9. 4
  10. >>> n=81
  11. >>> eval("n + 4")
  12. 85

捕获异常是try... except...finally

  1. try:
  2. ...
  3. except: # 这里可以不写具体的错误类型
  4. print('输入错误')

进制

含b 二进制

含o 八进制

含x 十六进制

oct() 转八进制

hex() 转十六进制

int() 转八进制或十六进制

  1. print(0o1) # 1
  2. print(0x01) # 1
  3. print(oct(64)) # 0o100
  4. print(hex(255)) # 0xff
  5. print(int('0100')) # 100
  6. print(int('0o100', 8)) # 64
  7. print(int('0x40', 16)) # 64
  8. # eval函数也可以转换,但速度会稍慢些
  9. print(eval('100')) # 100
  10. print(eval('0o100')) # 64
  11. print(eval('0x40')) # 64

File

  1. fileStr=fileStr.strip() # 去除头尾空格、\n、\r、\t
  2. # lstrip() 去除左边的 rstrip() 去除右边的
  3. # open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
  4. f = open(path)
  5. for each_line in f.readlines():
  6. li = each_line.strip().split(',')

os/os.path

pickle

  1. file = open("c:/person.txt", "wb") # python3必须以二进制写入模式
  2. pickle.dump(person, file) # 将字典序列化写入文件
  3. file.close()
  4. # 将person字典从文件中读取
  5. file = open("c:/person.txt", "rb")
  6. personFromFile = pickle.load(file)
  7. # numpy读取文件
  8. data = np.loadtxt('iris_data.csv')

逗号和分号

  1. # 一行写几条语句,也是python唯一用分号的地方
  2. x = 1;y = 2;z = 3
  3. a,b,c = 1,2,3
  4. # 赋值
  5. x = y = z = 1

range

  1. # start和end一样时,不执行
  2. for i in range(1, 1):
  3. print(i)

列表比较

  1. list1 = [1, 2]
  2. list4 = [1, 2, 3, 4]
  3. print(list1 < list4) # True

$ | - ^

注意一定要是set(集合)才能做此操作,否则报错

  1. top_10_by_perc = set(df_sort_by_perc[:10]['no'].values.tolist())
  2. top_10_by_vol = set(df_sort_by_vol[:10]['no'].values.tolist())
  3. print('涨幅和成交量均在前10名的股票:')
  4. print(sorted(top_10_by_perc & top_10_by_vol))
  5. print('涨幅或成交量在前10名的股票:')
  6. print(sorted(top_10_by_perc | top_10_by_vol))
  7. print('涨幅前10名,但成交量未进前10名的股票:')
  8. print(sorted(top_10_by_perc - top_10_by_vol))
  9. print('涨幅和成交量不同时在前10名的股票:')
  10. print(sorted(top_10_by_perc ^ top_10_by_vol)) # ^号等于|减去&

Python数据分析易错知识点归纳(一):基础知识的更多相关文章

  1. python函数-易错知识点

    定义函数: def greet_users(names): #names是形参 """Print a simple greeting to each user in th ...

  2. JavaScript易错知识点整理

    前言 本文是我学习JavaScript过程中收集与整理的一些易错知识点,将分别从变量作用域,类型比较,this指向,函数参数,闭包问题及对象拷贝与赋值这6个方面进行由浅入深的介绍和讲解,其中也涉及了一 ...

  3. JavaScript 易错知识点整理

    本文是我学习JavaScript过程中收集与整理的一些易错知识点,将分别从变量作用域,类型比较,this指向,函数参数,闭包问题及对象拷贝与赋值这6个方面进行由浅入深的介绍和讲解,其中也涉及了一些ES ...

  4. JavaScript易错知识点整理[转]

    前言 本文是我学习JavaScript过程中收集与整理的一些易错知识点,将分别从变量作用域,类型比较,this指向,函数参数,闭包问题及对象拷贝与赋值这6个方面进行由浅入深的介绍和讲解,其中也涉及了一 ...

  5. JS易错知识点

    JAVASCRIPT易错知识点整理 前言 本文是学习JavaScript过程中收集与整理的一些易错知识点,将分别从变量作用域,类型比较,this指向,函数参数,闭包问题及对象拷贝与赋值这6个方面进行由 ...

  6. Java易错知识点(1) - 关于ArrayList移除元素后剩下的元素会立即重排

    帮一个网友解答问题时,发现这样一个易错知识点,现总结如下: 1.易错点: ArrayList移除元素后,剩下的元素会立即重排,他的 size() 也会立即减小,在循环过程中容易出错.(拓展:延伸到所有 ...

  7. JavaScript易错知识点

    JavaScript易错知识点整理1.变量作用域上方的函数作用域中声明并赋值了a,且在console之上,所以遵循就近原则输出a等于2. 上方的函数作用域中虽然声明并赋值了a,但位于console之下 ...

  8. 【转载】Python编程中常用的12种基础知识总结

    Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进 ...

  9. Python编程中常用的12种基础知识总结

    原地址:http://blog.jobbole.com/48541/ Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时 ...

  10. python六十七课——网络编程(基础知识了解)

    网络编程: 什么是网络编程? 网络:它是一种隐形的媒介:可以将多台计算机使用(将它们连接到一起) 网络编程:将多台计算机之间可以相互通信了(做数据交互) 一旦涉及到网络编程,划分为两个方向存在,一方我 ...

随机推荐

  1. Sentinel实战

    一.Sentinel简介 Sentinel是阿里开源的面向服务流量治理的框架,官方原文是Sentinel 是面向分布式.多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由.流量控制.流 ...

  2. 基于django+ansible+webssh运维自动化管理系统

    基于django+ansible+webssh运维自动化管理系统   前言 最初开发这个基于Django ansible运维自动化管理系统的想法其实从大学时候就已经有了,但是苦于技术原因和没有线上环境 ...

  3. javasec(四)序列化与反序列化基本原理

    title: javasec(四)序列化与反序列化基本原理 tags: - javasec - 反序列化 categories: - javasec cover: 'https://blog-1313 ...

  4. 【leetcode】258. 各位相加

    [leetcode]258. 各位相加 C++解法: class Solution { public: int addDigits(int num) { string s;//用来将num转换成字符串 ...

  5. [双目视差] 立体校正源码分析(opencv)

    文章目录 [双目视差] 立体校正源码分析(opencv) 一.源码解析 二.源码中的方法 [双目视差] 立体校正源码分析(opencv) 一.源码解析 立体校正:把实际中非共面行对准的两幅图像,校正成 ...

  6. thinkphp常量定义

    是已经封装好的系统常量 主要是用在控制器下面的动作当中 这样能很大的提高我们的开发效率主要有下面的一些     手册上面都有的     __ROOT__ 网站的根目录     __APP__ 代表项目 ...

  7. mapper中sql返回类型是integer,但是sql查询结果是null,报错

    1.出问题代码 当sql返回结果为null时报错    org.apache.ibatis.binding.BindingException: Mapper method 'com.yswl.scie ...

  8. Golang for循环遍历小坑

    一.for循环 循环:让程序多次执行相同的代码块for循环是Go语言中唯一一个循环结构for循环经典语法先执行表达式1执行表达式2判断是否成立,如果成立执行循环体循环体执行完成后,执行表达式3再次执行 ...

  9. 2022-11-15:这里有 n 个航班,它们分别从 1 到 n 进行编号。 有一份航班预订表 bookings , 表中第 i 条预订记录 bookings[i] = [firsti, lasti,

    2022-11-15:这里有 n 个航班,它们分别从 1 到 n 进行编号. 有一份航班预订表 bookings , 表中第 i 条预订记录 bookings[i] = [firsti, lasti, ...

  10. 2022-07-30:以下go语言代码输出什么?A:[]byte{} []byte;B:[]byte{} []uint8;C:[]uint8{} []byte;D:[]uin8{} []uint8。

    2022-07-30:以下go语言代码输出什么?A:[]byte{} []byte:B:[]byte{} []uint8:C:[]uint8{} []byte:D:[]uin8{} []uint8. ...