一、.pyc是什么

该文件就是Python解释器编译之后产生的字节码,只有python可以读。
手动执行不生成.pyc

执行代码有导入别的.py文件,执行后会生成.py同名的.pyc文件:
在python2.0中:
  执行.py文件后,会生成一个.pyc和一个__pycache__文件夹。
在python3.0中:
  执行.py文件后,生成的.pyc文件放在了__pycache__文件夹下边,

二、常用数据类型  

  1.数字

int(整型)

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

long(长整型)(python3.0没有了)

跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由 于机器内存有限,我们使用的长整数数值不可能无限大。
  注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。

float(浮点型)

浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。

complex(复数)
复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。

注:Python中存在小数字池:-5 ~ 257

    2.布尔值

真或假;1或0
判断是否是真:当真的时候返回时True,当假的时候返回是False

    3.字符串

"hello world"

三、字符串格式化输出

  常见几种写法:

name = 'abc'
print ("I am %s" %name)
#输出:I am abc
#注意:%s代表字符串;%d代表整数;%f代表浮点数
name = 'abc'
print ("I am" + name +"and your ?")
#输出:I am abc and your?
#注意:%s代表字符串;%d代表整数;%f代表浮点数
name = 'abc'
age = 22
job = IT
msg = '''
imformation is 
-----------
Name:%s
 Age:%d
 Job:%s
-----end---
''' %(name,age,job)
print (msg)
#输出:
imformation is 
-----------
Name:abc
 Age:22
 Job:IT
-----end---
#注意:%s代表字符串;%d代表整数;%f代表浮点数



四、列表的语法和使用(其他语言中叫做数组)

    创建列表:

name = ['a','b','c','d']
或
name = list(['a','b'])

    1.列表name_list中的a和b都叫做元素;

    2.a和b在列表中都有一个下标,下标默认从0开始;

    3.列表的切片:      

1.管头不管尾:
    print(name[0:2])
    输出:['a', 'b']
2.取最后一个值:name[-1]
3.取最后五位:name[-2:]
4.取前边五位:name[:2]
5.如果切片后还要再切片,在后边加[];
  取name的前三位,再取后两位,输出:['b', 'c']
  name[:3][-2:]

     4.修改列表:

      name[1] = "abc"   #中括号里边直接写列表的下标,等号后边是修改后的值;

    5.插入字符串:

      name.insert(1,'bb') #1为插入的列表下标位置,bb为插入的内容,一次只能插入一个;

    6.追加:

        name.append('cc')   #

    7.删除:

        name.remove('cc')    #一次只能删除一个

    8.del删除列表内容:

        del name[0:2]        #删除列表的前两个元素

    9.del删除列表:

        del name

    10.每隔开两个元素打印一个(默认)

        写法一:print(name[0::2])    #其中的2代表步长,默认步长为1;

        写法二:print(name[0:-1:2])  #这样是不会打印最后一个

    11.判断a在不在列表中

        print('a' in name)

    12.统计列表中有几个a

        print(name.count('a'))

    13.把列表中的a改成aaa    

        aa = name.index('a')    #先查找a的位置,赋值给变量aa

        name[aa]= 'aaa'         #修改a为aaa

        print(name)             #打印name列表

    14.清空列表

        print(name.clear())

    15.把下列表合到大列表中

        name1.extend(name2)

    16.反转列表

        name.reverse()

    17.列表排序

        name.sort()

    18.列表的浅复制(也称列表的软链接,第一层的列表完全复制,其他层次的列表不copy)

        name1 = name.copy()            #复制name列表到name1,

    19.列表的深复制(完整复制所有层次的列表内容)

        import copy                    #导入name模块

        name2 = copy.deepcopy(name)    #完全复制name列表到name2

        print name

    20.查看列表元素索引

        name.index('a')                #查找a在列表中的位置,也就是下标

五、字符串常用操作

    1.移除空格:

         a.strip()    

    2.分割:

        a.split()

    3.索引:

        索引一:
            a.index()
        索引二:        
            msg = "hello,{name},{age}"
            msg2 = msg.format(name="yang",age=21)
            print(msg2)
        输出:
            hello,yang,21  
        索引三:      
            msg = "hello,{0},{1}"
            print(msg.format('yang',20))        
        输出:
            hello,yang,20

    4.长度:

            print(len(msg2))

    5.切片:        

            name = "abcde"
            print(name[0:3])    #输出前三个字符串
            输出:
                abc

    6.输出居中对齐:

            print(name.center(20,'-'))
            -------abcde--------

    7.判断字符串有无空格

            print ('' in name)

    8.首字母大写

            print (name.capitalize())    

    9.判断字符串是否包含特殊字符。可以包含数字和字母,返回True,如果有其他的返回False;

            print (name.isalnum())

    10.判断是否以a结尾的,是返回True,否则返回False

            name.endswith('a')

    11.判断是否以a开始的,是返回True,否则返回False

            name.startswith('a')

    12.把字符串全部转成大写

            name.upper()

    13.把字符串全部转成小写

            name.lower()

六、数据运算

    1.数据运算符

      wKiom1dxGWfjmT3tAAA7If8NMKE571.png-wh_50

    2.比较运算符

      wKiom1dxGXvQoJTiAABEuieDe5E467.png-wh_50

    3.赋值运算符

      wKioL1dxGYzh_9E_AAA5WlH2rDo710.png-wh_50

    4.逻辑运算符

      wKioL1dxGZ2yMatwAAAj_xgoelc122.png-wh_50

    5.成员运算

      wKiom1dxGamAbVFeAAAaqkzaO6Q230.png-wh_50

    6.身份运算

      wKioL1dxGbTicx3CAAAdMhuaaA8084.png-wh_50

    7.二进制运算

      wKiom1dxGcDBuC-rAABp-ADFrak364.png-wh_50

七、死循环(while loop)

    

#当代码循环100次退出,并打印退出。

count = 0                      #设定标志位,次数为0

while True:                    #设定永远为真

    print("输出",count)        #如果为真,输出次数是多少

    count +=1                  #每循环一次,次数加1

    if count == 100:           #如果次数=100,执行以下语句

        print("退出")          #打印退出

        break                  #退出整个循环


八、字典

    1.创建字典(字典可以嵌套字典、列表、元祖、等)

        name= {1:'a',2:'b',3:'c'}

        字典用{}表示;每个值都有一个key对应一个value;

        每对值用,隔开;key值是唯一的;没有下标,没有顺序;

    2.字典的功能

        .clear     清空

        .POP       删除

        .copy      复制

        .get       获取

        .item      把字典变成一个元祖,数据太多情况下不要操作此功能。

        .values    打印所有的values

        .keys      打印所有的key