第三天 python的初始编码,基本数据类型(int,str,bool),字符串的操作

 初始编码

电脑的传输, 还有储存的实际都是01010101010

美国 :ascii码 只能表示256可能,太少

          为了解决这个全球化的文字问题,创建了万国码,unicode

          中文有9万多字,16位表示一个字符不够用,32位表示一个字符

           A   0100  0001  0100  0001  0100  0001  0100  0001

ascii 码 : 1个字节表示所有的英文,特殊字符,数字等等

unicode : 2个字节,16位表示一个中文,不够用。Unicode一个中文要用四个字节表示

Unicode  升级  utf-8(一个中文要用3个字节去表示)  utf-16  utf- 32

00000001     8位 == 1个字节byte

      1byte         1024byte  ==  1kb

      1kb           1024kb   ==  1MB

      1MB          1024MB   ==  1GB

      1GB           1GB      ==  1YB

utf-8  一个字符最少用8位去表示:

          英文用8位                         一个字节表示

         欧洲文字用16位去表示     两个字节表示

         中文用24 位去表示           三个字节表示

utf-16 一个字符最少用16位去表示

gbk国内使用,一个中文用两个字节 (中国国产,只能用于中文和ascii码中的文字)

gbk和utf-8只能通过unicode进行互换。

1.Python的基本数据类型(int,bool,str)

  1. Int ==> 整数      主要用来进行数学运算
  2. str ==> 字符串    可以保存少量的数据并进行相应的操作
  3. bool è 布尔值    判断真假  True ,False
  4. list è 列表      储存大量数据,用[]表示  z ["大阳哥", "东阳哥", ]
  5. tuple è 元祖     不可以发生改变,用() 表示  元组. 只读列表, 不能改
  6. dict è  字典     保存键值对,一样可保存大量数
  7. set   集合     保存大量数据,不可以重复,其实就是不保存value的dict

2.整数(int)

在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使用long类型. 在python3中不存在long类型

 bit_length()  计算整数在内存中占用的二进制码的长度

3.布尔值(bool)

bool 类型转换 :

       1. 你想转换成什么. 就用什么把目标包裹起来

       2. 带空的是False, 不带空的True

取值只有True, False. bool值没有操作.

转换问题:

      str => int     int(str)

      int => str     str(int)

      int => bool   bool(int).    0是False 非0是True

      bool=>int    int(bool)    True是1, False是0

      str => bool   bool(str)    空字符串是False, 不空是True

      bool => str   str(bool)    把bool值转换成相应的"值"

4.字符串(str)  (重点)

           在python中用', ", ''', """引起来的内容被称为字符串.

4.1切片和索引

1. 索引:

          索引就是下标. 切记, 下标从0开始。

          起始位置下标是0(从左到右),-1(从右到左)

         

4.2.切片:

          切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串

          原则:顾头不顾尾

4.2.1按着顺序切(从左到右  或  从右到左)    语法:str[start:end]

 

 2.2跳着截取

            步长: 如果是整数, 则从左往右取. 如果是负数. 则从右往左取. 默认是1

            切片语法:

                     Str[start:end:step]           Start:起始位置   end:结束位置  step:步长

字符串的操做

 

             切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的

子浮串大小写转换:

          capitalize    使字符串的首字母大写,其他的都是小写

          upper          使字符串全部变成大写  ( 重点字符)

          lower           使字符串全部变成小写

          swapcase    使字符串大小写翻转,即大写变成小写,小写变成大写(大小写互换)   

                 

          title              每个特殊字符隔开的单词首字母大写,中文也算特殊字符+(可以是空格,也可以是特殊符号,数字等)

         casefold      转换成⼩写, 和lower的区别: lower()对某些字符支持不够好.  casefold()对所有字母都有效. 比如东欧的一些字母

          

去除字符串中的空格:    

        strip    默认删除前后的空格 。也可以删除前后的特殊字符, 但在字符串中的特殊字符不能够被删除

        lstrip    去掉左边空格     

        rtsrip    去掉右边空格

        

        案例如下:

       

Strip :可以指定去掉的元素

       

 

 

(重点字符)字符串替换

replace (替换)

       

(重点字符)字符串切割

Spilt(切割)

      

如果切割符在左右两端. 那么定会出现空字符.深坑请留

     

3.格式化输出

  .format(格式化输出)

   

 

 

(重点字符)查找

 查找

         startswith 判断这个字符串是否以……开头 返回值为bool值

         endswith 判断这个字符串是否以……结尾, 返回值为bool值

         count     查找”xxx”出现的次数

      find() 和index()都是寻找字符串中的元素是否存在

     区别:

             find   若找到元素则返回元素的索引(下标), 如果找不到则返回-1

            Index  若找到元素则返回元素的索引(下标), 如果找不到则会报错

            

 条件判断

        isalmun  判断是否由字母和数字组成

        isalpha   判断是否全部是字母组成

  isdigit    判断字符串是否全部数字组成

  islower   判断字符串中是否全都是小写字母

  isupper   判断字符串中是否全都是大写字母

  isspace   判断字符串有没有空格

  istitle    判断字符串是否为标题

  isalpha   判断字符串有没有特殊字符

       

计算字符串的长度

      len() 计算字符串的长度

      注意: len()python的内置函数. 所以访问方式也不⼀样. 你就记着len()print()⼀样就行了

       

 

迭代

    我们可以使用for循环来便利(获取)字符串中的每一个字符

 语法:
   for
变量 in  可迭代对象(把可迭代对象中的每一个字符交给前面的变量循环)

    循环体

  else    (for循环后面可以加else)

      xxxxx

  可迭代对象: 可以一个一个往外的取值的对象

         

 

posted @ 2018-07-10 23:41  熊猫大侠-呀呀呀!!!  阅读(204)  评论(0编辑  收藏  举报