1、数据类型

  1、数字(int,float)

    整形(int):定义 age=20  #本质age=int(20)

    浮点类型:salary=3000.3 #本质salary=float(3000.3)

    还有不常用的长整型、复数。

  2、字符串

    定义:在单引号\双引号\三引号内,由一串字符组成

    name = “hardykay”

    1、按索引取值(正向取+反向取) :只能取

    

    2、切片

      格式:name[开头:结尾:步长],注意是包头不包尾。

      

    3、求长度 len

      

    4、in和not in

      

    5、移除空白strip

        

       当然还有lstrip,rstrip,这跟left和right有关,手动试试吧!

    6、切分split

    

    7、循环

      

   8、需要掌握的操作

    a、strip,lstrip,rstrip                              去空白
    b、lower,upper                                   字母大小写
    c、startswith,endswith       检查
    d、format的三种玩法       http://www.cnblogs.com/JackLi07/p/9832137.html
    e、split,rsplit                                       分割
    f、join              用于将序列中的元素以指定的字符连接生成一个新的字符串。
    g、replace            把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
    h、isdigit             如果字符串只包含数字则返回 True 否则返回 False。

   9、练习

    

# 写代码,有如下变量,请按照要求实现每个功能
name = " aleX"
# 1) 移除 name 变量对应的值两边的空格,并输出处理结果
name = ' aleX'
a=name.strip()
print(a) # 2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果

name=' aleX'
if name.startswith(name):
print(name)
else:
print('no') # 3) 判断 name 变量对应的值是否以 "X" 结尾,并输出结果

name=' aleX'
if name.endswith(name):
print(name)
else:
print('no') # 4) 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
name=' aleX'
print(name.replace('l','p')) # 5) 将 name 变量对应的值根据 “l” 分割,并输出结果。
name=' aleX'
print(name.split('l')) # 6) 将 name 变量对应的值变大写,并输出结果

name=' aleX'
print(name.upper()) # 7) 将 name 变量对应的值变小写,并输出结果

name=' aleX'
print(name.lower()) # 8) 请输出 name 变量对应的值的第 2 个字符?
name=' aleX'
print(name[1]) # 9) 请输出 name 变量对应的值的前 3 个字符?
name=' aleX'
print(name[:3]) # 10) 请输出 name 变量对应的值的后 2 个字符?

name=' aleX'
print(name[-2:]) # 11) 请输出 name 变量对应的值中 “e” 所在索引位置?

name=' aleX'
print(name.index('e')) # 12) 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
name=' aleX'
a=name[:-1]
print(a)

练习

  3、列表

    my_list=['alex','wupeiqi','yuanhao',4,5] #本质my_list=list([...])

    1、按索引存取值(正向存取+反向存取):即可存也可以取
      

   很多功能跟字符串类似,字符串本质上就是一个比较特殊的列表。

    2、删除

      

    3、del、pop、remove的区别

      a、del能删除任何东西,pop和remove只能操作列表字典等

      b、del和pop删除是已知道key,不需要知道value。remove是通过value删除的

      

  4、元组

    与列表类型比,只不过[]换成()

    a = (1,2,3,4),元组是不可变的。

  5、字典

    作用:存多个值,key-value存取,取值速度快

    定义:key必须是不可变类型,value可以是任意类型

    

info={'name':'egon','age':18,'sex':'male'} #本质info=dict({....})

info=dict(name='egon',age=18,sex='male')

info=dict([['name','egon'],('age',18)])

{}.fromkeys(('name','age','sex'),None)

    其他操作都一样,不谈了,谈点不一样的。

    1、键keys()

      

    2、值values()

      

    3、键值对items()

      

  6、集合

    集合跟列表几乎一样,唯一不同在于,集合没有重复值,因此,列表去重可以使用集合来做。除了去重,还有一个极其重要的作用,那就是运算。还有就是集合使用{}或者set()

    

   7、总结

     数字

       字符串

    集合:无序,即无序存索引相关信息
    元组:有序,需要存索引相关信息,不可变
    列表:有序,需要存索引相关信息,可变,需要处理数据的增删改
    字典:无序,需要存key与value映射的相关信息,可变,需要处理数据的增删改

2、字符编码

    

3、文件处理

python学习笔记之数据类型、字符编码、文件处理的更多相关文章

  1. Python编程笔记二进制、字符编码、数据类型

    Python编程笔记二进制.字符编码.数据类型 一.二进制 bin() 在python中可以用bin()内置函数获取一个十进制的数的二进制 计算机容量单位 8bit = 1 bytes 字节,最小的存 ...

  2. Python学习笔记(四)——编码和字符串

    一.编码 1.编码类别: (1)ASCII码:127个字母被编码到计算机里,也就是大小写英文字母.数字和一些符号 (2)GB2312码:中国制定的用于加入中文汉字的编码 (3)Unicode:防止由于 ...

  3. python学习第四天 --字符编码 与格式化及其字符串切片

    字符编码 与格式化 第三天已经知道了字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采 ...

  4. Python学习笔记(四)——编码和字符串

    一.编码 1.编码类别: (1)ASCII码:127个字母被编码到计算机里,也就是大小写英文字母.数字和一些符号 (2)GB2312码:中国制定的用于加入中文汉字的编码 (3)Unicode:防止由于 ...

  5. python学习笔记~INI、REG文件读取函数(自动修复)

    引入configparser,直接read整个INI文件,再调用get即可.但需要注意的是,如果INI文件本身不太规范,就会报各种错,而这又常常不可避免的.本文自定义函数通过try...except. ...

  6. Python学习笔记 - day3 - 数据类型及运算符

    Python的数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同 ...

  7. Python学习,第二课 - 字符编码

    关于字符编码 python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill) ASCII(American Standard Code for Information Inte ...

  8. python学习之路_字符编码

    字符编码及python中的转码问题,这篇博客讲的比较清楚,python 之路,致那些年,我们依然没搞明白的编码

  9. python学习第十八天计算机字符编码

    人类语言和计算机语言二进制怎么沟通,最开始字符编码为ascii码对照表 包括数据和字母,没有汉字,中国自己搞了一套自己的编码 gb2312编码后来发展GBK编码,日本,韩国都,甚至台湾也搞自己的编码, ...

随机推荐

  1. Codeforces 1114B (贪心)

    题面 传送门 分析 答案很好看出,显然是选最大的m*k个数 那么如何构造方案呢 我们把最大的m*k个数的位置标记为1,其他标记为0 从左到右维护一个ptr,记录有标记的数的个数,如果当前有m个有标记的 ...

  2. linux mysql修改数据表结构语法

    MySQL修改表的语法=========================增加列[add 列名]=========================①alter table 表名 add 列名 列类型 列 ...

  3. Jenkins windows 执行批量cmd命令XCOPY 提示'XCOPY' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    由于Jenkins没有配置环境变量造成 打开Jenkins=>Manage Jenkins =>Configure System =>全局属性 新增全局变量 健: Path 值: % ...

  4. ltp-ddt wdt_test

    # @name Watchdog Timer getsupport,settimeout,getstatus,keepalive ioctl and write test# @desc Watchdo ...

  5. elasticsearch删除

    1.根据id删除 2.根据查询条件删除

  6. 9.Markdown语法(自用)——2019年12月12日

    title: markdown语法说明 date: "2018-12-26 20:17:16" tags: 技术指令 categories: 技术驿站 markdown语法说明 2 ...

  7. tmux使用——2019年11月20日16:40:15

    1.tmux 命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令.用户与计算机的这种临时的交互,称为一次"会话& ...

  8. MySQL学习笔记_时间,多表更新,数据库元数据

    MySQL技术内幕一.MySQL基础知识1.1.显示表中的列SHOW COLUMNS FROM order_info like 'order%'1.2.显示表SHOW TABLES LIKE 'ord ...

  9. vagrant(二)配置文件vagrantfile详解 以及安装php、nginx、mysql

    上一篇文章完整的讲叙了如何安装一个vagrant的环境.这里主要说一说vagrant的配置文件Vagrantfile. 一 配置详解 在我们的开发目录下有一个文件Vagrantfile,里面包含有大量 ...

  10. 0-2马尔可夫过程Markov Processes

    在0-1中提到了,当最终output的p=0时,这个时候模型无法正常使用,为了解决这个问题,在0-4中会有所提及. 在本节中,其实,计算概率的时候,我们应该假设某一个位置的词与它前面的所有词都是相关的 ...