python基础学习笔记一
1、变量
为了节省内存,python解释器会对一些简单的字符串以及小整型数,做出一些优化,当要定义的新变量的内容与定义过的内容相同时,会让两者使用同一个内存空间。
例如:

在这个例子里面,‘old’是一个简单的字符串,因此python解释器使name1与name2都指向同一个内存地址,用这一个地址存储‘oldboy’。
注意:对于长字符串和数字(对于范围在【-5,257】的数字,优化机制仍存在),优化机制将不再存在,变量将会各自占用一个内存地址。
小伙伴们要记得哦,查看内存地址时,使用id()这个命令哦!
2、字符编码
①ASCII,最早只有127个字母,即大小写英文字母、数字和一些符号,后128位被称为扩展ASCII码。
②GBK和GB2312:为了能显示中文,并且和ASCII兼容 ,中国制定GB2312.。而GBK是GB2312的扩展字符集,支持繁体字,且兼容GB2312.
③Unicode:把各国的编码语言都统一到一套编码里,防止乱码的问题。值得注意的是:现代操作系统和大多数编程语言都直接支持Unicode。ASCII与Unicode的区别:ASCII编码是1个字节,而Unicode编码通常是两个字节。
小伙伴们,是不是觉得Unicode很厉害呦,但同时与ASCII一比较,有没有看出一个问题,那就是:如果都统一成Unicode编码,我们肯定对不用担心乱码的问题了,但是若文本都是英文的话,用Unicode编码就多占了一部分的存储空间,而传输速度也会减慢。
④UTF-8:为了改良Unicode的缺点,UTF-8诞生。UTF-8是一个‘可变长编码’,即UTF-8编码可以把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英语字母被编码成1个字节,汉字通常是3个字节,仅一些生僻字符被编码成4-6个字节。
总结:计算机系统通用的字符编码的工作方式:在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或需要传输的时候,就转换为UTF-8编码。用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存时再将Unicode转换为UTF-8保存到文件中。具体见下图:

3、进制转换
bin():转换为二进制,二进制前面标注为0b。oct():转换为八进制,八进制前面标注为0o。hex():转换为16进制,16进制前面标注为0x。

4.字符串(常用操作)
例如 s = ‘world’
s.index() #索引
s.find () #查找
#移除空白:
s.lstrip = left strip = 去除字符串左边的 = strip leading = 去除(字符串)开始的
s.rstrip = right strip = 去除字符串右边的
s.strip = strip left and right = 去除(字符串)左边的和右边的
len(s) #字符串s的长度
#替换:
s = ‘hello world’
s.replace('h','H') #将h替换为H
输出:‘Hello world’
#切片
s = ‘helloworld’
s[0:7] #取出0到6,即取头不取尾
输出:hellowo
5、字符串中的工厂函数(常用的总结如下):
例如:s = ‘Hello world’
s.capitalize() #将首字母大写,其它的均小写
s.count('o') #统计字符串中o出现的次数 s.count(‘o’,0,5) #统计字符串s中0-5字符中o出现的次数
s.center(50,'*') #一共占用50个字符,不够50个字符,则用*来填充,而目标文字s始终位于中间位置
s.find('o',0,3) #从字符串s中位于0-3位置的字符中寻找‘o’,返回所找到的最小索引值
s.format() #格式化输出,如下图所示

s.index('o',0,5) #返回0-5字符中找到o的位置的索引值,但若没有找到,则会报Valueerror
s.join() #举例如下:

s.split():


使用方法如下:

s.join()

python基础学习笔记一的更多相关文章
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- python 基础学习笔记(1)
声明: 本人是在校学生,自学python,也是刚刚开始学习,写博客纯属为了让自己整理知识点和关键内容,当然也希望可以通过我都博客来提醒一些零基础学习python的人们.若有什么不对,请大家及时指出, ...
- Python 基础学习笔记(超详细版)
1.变量 python中变量很简单,不需要指定数据类型,直接使用等号定义就好.python变量里面存的是内存地址,也就是这个值存在内存里面的哪个地方,如果再把这个变量赋值给另一个变量,新的变量通过之前 ...
- Python基础学习笔记(十三)异常
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-exceptions.html Python用异常对象(excep ...
- Python基础学习笔记(十二)文件I/O
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-files-io.html ▶ 键盘输入 注意raw_input函 ...
- Python基础学习笔记(十一)函数、模块与包
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-functions.html 3. http://www.liao ...
- Python基础学习笔记(十)日期Calendar和时间Timer
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-date-time.html 3. http://www.liao ...
- Python基础学习笔记(九)常用数据类型转换函数
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-variable-types.html 3. http://www ...
- Python基础学习笔记(八)常用字典内置函数和方法
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-dictionary.html 3. http://www.lia ...
- Python基础学习笔记(七)常用元组内置函数
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-tuples.html 3. http://www.liaoxue ...
随机推荐
- R语言︱LDA主题模型——最优主题数选取(topicmodels)+LDAvis可视化(lda+LDAvis)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:在自己学LDA主题模型时候,发现该模 ...
- java Socket实现简单在线聊天(三)
在上一篇,利用线程使服务端实现了能够接收多客户端请求的功能,这里便需要客户端接收多客户端消息的同时还能把消息转发到每个连接的客户端,并且客户端要能在内容显示区域显示出来,从而实现简单的在线群聊. 在实 ...
- HTML多表头表格
1.多表头表格代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- 用DataRelation给多个DataTable建立关系并显示到TreeView
DataRelation 对象执行两种功能: 它可使与正使用的记录相关的记录可用.如果在父记录 (GetChildRows) 中,则它提供子记录:如果正使用子记录 (GetParentRow),则它提 ...
- C#数据缓存介绍及Caching通用帮助类整理
C#缓存主要是为了提高数据的读取速度.因为服务器和应用客户端之间存在着流量的瓶颈,所以读取大容量数据时,使用缓存来直接为客户端服务,可以减少客户端与服务器端的数据交互,从而大大提高程序的性能. 以下为 ...
- 使用图片作为a标签的点击按钮时,当触发touchstart的时候,往往会有一个灰色的背景,想要去掉的话可以用下面这种方式
a,a:hover,a:active,a:visited,a:link,a:focus{ -webkit-tap-highlight-color:rgba(0,0,0,0); -webki ...
- java访问权限修饰符
作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × ja ...
- Windows Developer Day Review
北京时间 3 月 8 日凌晨 1 点钟,今年的第一次 Windows Developer Day 正式召开. 因为时间太晚看不了直播,我也是第二天早上在公司看的重播.整个会议过程有很多值得去研究 ...
- 浅谈JS中的浅拷贝与深拷贝
前端工程师应该都比较熟悉浅拷贝和深拷贝的概念,在日常业务代码的过程中,特别是做数据处理的时候,经常行的会遇到,比如如何在不修改原对象的基础上,重新生成一个一模一样的对象,加以利用,又或是,如何巧妙地运 ...
- 内置函数:filter函数
功能: filter函数用于过滤序列,将满足条件的元素取出来构成新的序列. 用法: filter(function, iterable) 接受两个参数,第一个函数为过滤函数(返回True后者False ...