Python day two

简介:

一、.pyc是什么

1
2
3
4
5
6
7
8
该文件就是Python解释器编译之后产生的字节码,只有python可以读。
手动执行不生成.pyc
 
执行代码有导入别的.py文件,执行后会生成.py同名的.pyc文件:
在python2. 0 中:
   执行.py文件后,会生成一个.pyc和一个__pycache__文件夹。
在python3. 0 中:
   执行.py文件后,生成的.pyc文件放在了__pycache__文件夹下边,

二、常用数据类型  

  1.数字

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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
2
真或假; 1 0
判断是否是真:当真的时候返回时 True ,当假的时候返回是 False

    3.字符串

1
"hello world"

三、字符串格式化输出

  常见几种写法:

1
2
3
4
name  =  'abc'
print  "I am %s"  % name)
#输出:I am abc
#注意:%s代表字符串;%d代表整数;%f代表浮点数
1
2
3
4
name  =  'abc'
print  "I am"  +  name  + "and your ?"
#输出:I am abc and your?
#注意:%s代表字符串;%d代表整数;%f代表浮点数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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代表浮点数



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

    创建列表:

1
2
3
name  =  [ 'a' , 'b' , 'c' , 'd' ]
name  =  list ([ 'a' , 'b' ])

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

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

    3.列表的切片:      

1
2
3
4
5
6
7
8
9
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.索引:

1
2
3
4
5
6
7
8
9
10
11
12
13
         索引一:
             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.切片:        

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

    6.输出居中对齐:

1
2
             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



     本文转自506554897 51CTO博客,原文链接:http://blog.51cto.com/506554897/1793434,如需转载请自行联系原作者





相关文章
|
1月前
|
机器学习/深度学习 XML TensorFlow
python (3)
python (3)
12 0
|
Java 开发者 Python
Python中的self是什么你知道嘛?
在Python类中规定,函数的第一个参数是实例对象本身,并且约定俗成,把其名字写为self。其作用相当于java中的this,表示当前类的对象,可以调用当前类中的属性和方法。
|
1月前
|
机器学习/深度学习 数据挖掘 算法框架/工具
Python
Python
16 1
|
Python
Python:使用2to3将Python2转Python3
Python:使用2to3将Python2转Python3
84 0
|
存储 Python
Python中namedtuple使用
Python中存储系列数据,比较常见的数据类型有list,除此之外,还有tuple数据类型。相比与list,tuple中的元素不可修改,在映射中可以当键使用。tuple元组的item只能通过index访问,collections模块的namedtuple子类不仅可以使用item的index访问item,还可以通过item的name进行访问。可以将namedtuple理解为c中的struct结构,其首先将各个item命名,然后对每个item赋予数据。
92 0
|
Python 数据采集 开发者
练习PYTHON之EVENTLET
以下是重点,要会运用: eventlet是一个用来处理和网络相关的python库函数,而且可以通过协程来实现并发,在eventlet里,把“协程”叫做 greenthread(绿色线程)。所谓并发,就是开启了多个greenthread,并且对这些greenthread进行管理,以实现非阻塞式的 I/O。
1982 0
|
存储 API Python
Python 3.7.0 来了!
Python官网静悄悄地发布了一条大消息:正式发布 Python 3.7.0!同时发布的还有Python 3.6.6稳定版。官网刚刚更新了可下载文档,还在用Python 2.7和Python3.5的你,赶紧用起来!
5079 0
|
移动开发 Python