Python从入门到精通(day02)


继续上次的Python入门学习


数据类型

进制转化

    二进制转化为十进制

        1100011 = 1 * 2^6 + 1*2^5 + 1*2^1 + 1

                        =    64    +    32  +    2    + 1 = 99

        123 = 1 * 10^2 + 2 * 10^1 + 3 * 10^0

    十进制转化为二进制

        辗转相除法,倒除法

        56 = 111000 = 32 + 16 + 8 = 56

        56

        28  0

        14  0

        7    0

        3    1

        1    1

        0    1

二进制和十进制之间的转换图解

还有简便方法

二进制和十进制之间转换之简便方式图解

    八进制

        01234567

        八进制转化为十进制

        0o56 = 5*8^1 + 6 = 46

        十进制转八进制

        46

        5  6

        0  5

    二进制转八进制(三位一取)

        010 110 011 001 = 0o2631

十六进制

    0-9 a(10)bcdef(15)

    0xf85 = 15*16^2 + 8*16^1 + 5 =

    二进制转十六进制(四位一取)

        0011 0100 1101 = 0x34d

八进制&十六进制之间的转换

单位换算

一个0或者一个1称之为一位,英文称之为1bit(比特),简写为1b

计算机是以字节(bytes)为单位,简写为1B

1B = 8b  0000 0000 === 1111 1111  0===2^8-1=255

1024B = 1KB

1024KB = 1MB

1024MB = 1GB

1024GB = 1TB

数据类型

整型(int)、浮点(float)、布尔(真假,bool)、空(None)、字符串(重要,str)、列表(list)、元组(tuple)、字典(dict)、集合(无序性、唯一性, set)

字符串

    定义:用单引号或者双引号括起来的东西,两者没有区别

        注意:单引号中不能再加单引号

                    双引号中不能再加双引号

字符串长度

    len(string)用来计算字符串长度,有多少个就是多少,无论是汉子,字母或者数字

字符串里面的转义

    转义就是将有意义的变为无意义的,无意义的变为有意义的

    \n  换行符

    \t  制表符

    \r  回车符

    可以通过转义让他们失去意义 例:\\n

    在字符串前面加上r , 让所有转义字符都是去意义 (一般用在路径前面)

        例:h = r'C:\Users\ZBLi\Desktop\1801\day02\2- jinzhi.py'

字符串的加号和乘号

    +  两个字符串相加就是字符串的拼接

    *  字符串重复n次

字符串中字符的提取

    从左到右,下标从0开始  提取方式为  a[0]

    从右到左,下标从-1开始  a[-1]

  【注】下标不能越界

字符串的切片

    字符串切片会得到一个新的字符串

    格式    a[start:end:step]

    提取从start开始,到end结束的所有字符,包含start下标,不包含end下标

    a[0:5] == a[:5]

    a[18:] == a[-5:]

    a[2:-2]

    a[:]  提取所有

    a[0:10:2]  从0-10隔一个取一个

    a[::2]    从头到尾每隔一个取一个

    a[16:11:-1]  倒着提取指定的字符

    a[::-1]    字符串的逆序

字符串的特性

    不可变:字符串里面的字符不可变

字符串的格式化

    第一种写法:

        '我叫%s, 我喜欢%s, 我今年%d岁了, 我的身高为%dcm' % ('林志颖', '张柏芝', 50, 165)

    占位符:

        %s : 留给字符串进行填充的

        %d : 留给整型用的

        %10d  一共占用10位,前面补空格

        %010d  一共占用10位,前面补零

        %f : 留给浮点用的  默认后面保留6位小数

        %.2f  保留两位小数

        %10.2f  一共占用10位,前面补空格

        %010.2f 一共占用10位,前面补零

        %o : 将十进制按照八进制打印

        %x : 将十进制按照十六进制打印

    第二种写法:

        a = '我叫{}, 我喜欢看{}, 我喜欢的男歌星是{}, 我喜欢的电影演员是{}'.format('裴艳艳', '肖申克的救赎', '刘                德华', '周润发')

        a = '我叫{3}, 我喜欢看{2}, 我喜欢的男歌星是{1}, 我喜欢的电影演员是{0}'.format('裴艳艳', '肖申克的救                  赎', '刘德华', '周润发')

        a = '我叫{yanyan}, 我喜欢看{jiu}, 我喜欢的男歌星是{hua}, 我喜欢的电影演员是{fa}'.format(jiu='裴艳艳',                hua='肖申克的救赎', fa='刘德华', yanyan='周润发')

列表(list)

    定义:lt = [元素1, 元素2, 元素3]

    列表可以存放任意的数据类型

    取值:

        lt[下标]

        从左到右,下标从0开始

        从右到左,下标从-1开始

      【注】不能越界

        列表中嵌套列表,接着后面加中括号取值即可

    可变性:

        和字符串的不可变相反,列表中元素可以改变

    列表中的加号和乘号

        + 得到一个新列表,元素就是两个列表元素的和

        * 得到新列表,将原列表中的元素重复n次

      【注】列表只能和列表相加

    赋值

        [a, b, c] = [1000, 2000, 3000]

        前后个数必须相等

  列表的切片

        lt[start:end:step]

        列表切片之后得到一个新列表

        lt[::] = []  清空整个列表

        lt[0:2] = [] 清除列表前两个元素

        其改变的就是lt本身

元组(tuple)

    定义:tp = ()

        和列表几乎一样,但是是通过小括号括起来的

        访问元素和列表一样

      【注】如果元组中只有一个元素,要记得加一个逗号

    元组切片

        和列表、字符串切片都一样

        元组切片之后还是元组

        元组中的加号和乘号

    + 得到新元组,包含两个元组中所有元素

    * 重复几次,同列表字符串一样


day01《====                                  ====》day03

推荐阅读更多精彩内容

  • pdf下载地址:Java面试宝典 第一章内容介绍 20 第二章JavaSE基础 21 一、Java面向对象 21 ...
    王震阳阅读 88,808评论 26 537
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 8,338评论 0 39
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 3,603评论 0 4
  • 1、我今年要把六级过掉 2、我想成为一名室内设计师 3、人际关系什么的再说吧
    泊乙一阅读 35评论 0 0
  • 躺在沙发上,听着闹钟滴滴的响,真的很不喜欢这个声音,有点闹人。就算阻止了这种声音也不能阻止时间啊。 87年12月份...
    wwwEIEI阅读 32评论 0 0