• Python基础


    编码

    #coding=utf-8

    函数入口

     if __name__== "__main__":

    内置方法

      type:a=1 type(a)
      help:import time help(time)
      dir:dir(time)

    常用基本数据类型
    1.int 整型

    2.boolean 布尔

    3.string 字符串:计算字符串长度之前,要把字符串转为utf-8编码  len(str.decode("utf-8"))

    1).截取指定字符串 s = "i,am,lilei"  print s[2:4] print s.split(',')[1]

    2).替换指定字符串 ainfo = 'i love php'   replycontent = ainfo.replace('php','python')

    3).字符串拼接 str1="abcd"  str2="efg"  str3="hjk"   print "$".join([str1,str2,str3])  #中间用$符号拼接

      c = a + b
      c = "%s%s" % (a,b)
      c = "{a}{b}" .format (a=a,b=b)
      c = "".join([a,b])

    4).查找字符串的位置

      a = "i,am,a,boy,in,china"  print a.find('i')##不存在返回-1  print a.index('i')##不存在报错

    计算该字符串一共有几个逗号 print a.count(',')

    4.list 列表

     b=[[1,2,3],[4,5,6]]

     b[0][1]=7 #修改指定元素数值

     print b #输出结果为[[1, 7, 3], [4, 5, 6]]  

      1) 切片

      正向索引  a = [1,2,3,4,5,6,7]   print  a[0:4:1]     [1, 2, 3, 4]

      反向索引 a = [1,2,3,4,5,6,7]  print a[-1:-4:-1]  [7, 6, 5]

      默认索引 a = [1,2,3,4,5,6,7]  print  a[1:]结果为[2, 3, 4, 5, 6, 7]   print  a[1::2]结果为[2, 4, 6]

      2)添加操作   

      + 生成一个新的列表

      Extend 接受参数并将该参数的每个元素都添加到原有的列表中,原地修改列表而不是新建列表

      Append :添加任意对象到列表的末端

      Insert: 插入任意对象到列表中,可以控制插入位置。

      3)修改操作

        A = [1,2,3]

        A[0]=’4’

      4)删除操作

       Del :我们通过索引删除指定位置的元素。del a 删除列表对象的引用    del a[:] 清空列表对象里的元素

       Remove:移除列表中指定值的第一个匹配值。如果没找到的话,会抛异常。

       Pop:返回最后一个元素,并从list中删除它。

       5)成员关系

       通过In和not in我们可以判断一个元素是否在列表里。

       返回一个bool类型,元素在列表里返回true,否则返回fasle.

       6)列表推导式

        a.首先迭代iterable里所有内容,每一次迭代,都把iterable里相应内容放到iter_var中,再在表达式中应用该iter_var的内容,最后用表达式的计算值生成一个列表。

        比如我们要生成一个包含1到10的列表 [x for x in range(1,11)]    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

        b.加入了判断语句,只有满足条件的内容才把iterable里相应内容放到iter_var中,再在表达式中应用该iter_var的内容,最后用表达式的计算值生成一个列表。

        [x for x in range(1,11) if x % 2 == 1]      [1, 3, 5, 7, 9]

       7)排序翻转:sort,reverse

        list的reverse函数:反转一个list, 他的返回值为none

       8)列表的应用:

        a.内置list方法。

        b.2.xrange和range的具体区别。 

           xrange的用法:xrange(开始,结束,步长)   xrange 它生成一个xrange对象。

           比较:range: 直接生成一个列表对象。   xrange: 它是生成一个xrange对象。

           推荐:当我们需要操作一个非常大的数据,而且内存比较吃紧的时候,我们可以用xrange来操作省内存。

                   xrange一般用在循环里面,比如我们只需要操作部分数据的话,而不是返回全部元素来完成操作,推荐用xrange,效率更高。

        c.列表推导式之再应用。

          [x*x for x in range(100)]

          生成字符串 ['the %s' % d  for d in xrange(10)]

          [(x,y) for x in range(2) for y in range(2)]

         生成字典 dict([(x,y) for x in range(3) for y in range(2)])

    5.tuple 元组

    1)有序的集合

    2)通过偏移来取数据

    3)属于不可变的对象,不能在原地修改内容,没有排序,修改等操作。     

        元组不可变的好处。保证数据的安全,比如我们传给一个不熟悉的方法或者数据接口,确保方法或者接口不会改变我们的数据从而导致程序问题。

    6.集合

      集合是没有顺序的概念。所以不能用切片和索引操作。

      1)创建集合。set():可变的 不可变的frozenset():

      2)添加操作: add,update

      3)删除 remove

      4)成员关系 in,not in

      6)交集,并集,差集 & | -

      7)set去重 列表内容元素重复

    7.dict 字典

       字典是无序的,它不能通过偏移来存取,只能通过键来存取。

       1)创建字典。{},dict()

       info = {'name':'lilei', 'age': 20}

       info = dict(name='lilei',age=20)

       2)添加内容 a['xx'] = 'xx'

       3)修改内容 a['xx'] = 'xx' 

          dic['key'] = 'value'

          update 参数是一个字典的类型,他会覆盖相同键的值

          info.update({'city':'beijing','phone':'nokia'})

        4)删除 del,clear,pop

          del info['phone'] 删除某个元素

          info.clear()删除字典的全部元素

          info.pop('name')

         5)in 和 has_key() 成员关系操作

            phone in info

            info.has_key('phone')

         6)keys(): 返回的是列表,里面包含了字典的所有键

           values():返回的是列表,里面包含了字典的所有值

           items:生成一个字典的容器:[()]

         7)get:从字典中获得一个值

            info.get('name')

            info.get('age2','22')

    操作文本函数

    writeStr="写入";
    f=open('a.txt','w');
    f.write(writeStr)
    f.close()
    
    f=open("a.txt","r")
    readStr=f.read();
    print readStr
    
    #将模块string的帮助文档保存为一个文件
    import sys
    import string
    f = open('test.log','w')
    sys.stdout = f #将标准的输出流反映到文件的写入方法里面
    help(string)
    f.close()
    

      

  • 相关阅读:
    Java基础之泛型——使用通配符类型参数(TryWildCard)
    Java基础之泛型——使用二叉树进行排序(TryBinaryTree)
    Java基础之泛型——使用泛型链表类型(TryGenericLinkedList)
    Java基础之序列化对象——反序列化对象(DeserializeObjects)
    Java基础之序列化对象——将对象写入到文件中(SerializeObjects)
    拷贝excel里的内容转为JSON的js代码
    asp.net 正则获取url参数
    vs2013给类添加默认注释
    日货EmEditor的使用小技巧
    express不是内部或外部命令
  • 原文地址:https://www.cnblogs.com/cnki/p/5634824.html
Copyright © 2020-2023  润新知