美文网首页ITS·黑客
【python】基础

【python】基础

作者: 某米狼 | 来源:发表于2017-03-31 13:41 被阅读33次

    基础

    >>>print('you', 'bad', 'bad','你坏坏')
    you bad bad 你坏坏
    

    print()会依次打印每个字符串,遇到逗号“,”会输出一个空格。

    大小写敏感

    # 开头是注释

    当语句以冒号:结尾时,缩进的语句视为代码块。

    Python使用缩进来组织代码块,坚持使用4个空格的缩进。
    在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。在sublime设置里 大括号内添加以下代码

        "tab_size": 4,
        "translate_tabs_to_spaces": true,
        "expand_tabs_on_save": true,
    
    • 十六进制 0xff00,0xa5b4c3d2
      1.23x109 就是1.23e9

    • 转义字符
      Python还允许用r'' 表示 ''内部的字符串默认不转义print('\\\t\\')

    • Python允许用格式表示多行内容
      命令行里:

    >>> print('''line1
    ... line2
    ... line3''')
    line1
    line2
    line3
    

    程序里

    print('''line1
    line2
    line3''')
    
    • /除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数
    • ord()函数获取字符的整数表示
      chr()函数把编码转换为对应的字符
    • 如果知道字符的整数编码,还可以用十六进制这么写str:
    >>> '\u4e2d\u6587'
    '中文'
    

    3.6可以显示,2.7显示不出来

    • 让代码按UTF-8编码读取
      1. 在文件开头写上这两行:
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    
    1. 确使用UTF-8 without BOM编码储存文本
    • 格式化
    >>> 'Hello, %s' % 'world'
    'Hello, world'
    >>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
    'Hi, Michael, you have $1000000.
    >>> '%2d-%02d' % (3, 1)
    ' 3-01'
    >>> '%6.2f' % 3.1415926
    '  3.14'
    

    6.2f:6位包含小数点
    %d 整数
    %f 浮点数
    %s 字符串
    %x 十六进制整数

    • list [] 和 tuple ()
      classmates[-1] 就是倒数第一个
      .append(i, ) 在索引i插入元素
      .pop(i) 删除索引i
      多维列表:list元素也可以是另一个list
      classmates=(1,2,3)初始化后就不能被改咯
      classmates=(1) 只有单元素会引起歧义,因为()也表示数学小括号。所以,只有1个元素的tuple定义时必须加一个逗号来消除歧义。

    • elif 是else if的缩写,而且还不能用else if
      if x: 只要x是非零数值、非空字符串、非空list等,就是true

    • input()返回的数据类型是str,str不能直接和整数比较,用int()函数可以把字符串数字转化为数字类型

    • 循环
      while循环 和 for x in ...循环 两种, for循环就是把每个元素代入变量x,然后执行缩进块的语句。
      break跳出循环 continue提前结束本次循环,通常搭配if使用。要特别注意 不要滥用这俩,能改写循环条件和逻辑就不要用这俩
      list(range(5))[0, 1, 2, 3, 4]

    • 字典

      • dic
        d = {key1: value1,key2: value2} d[key]返回value
        或者{set}[key] 就可以返回value
        判断key存在与否:
        key in d 返回false
        d.get(key) 返回None的时候Python的交互式命令行不显示东西
        d.get('Thomas', -1) 返回 -1
        请务必注意,dict内部存放的顺序和key放入的顺序是没有关系的。
        dict的key必须是不可变对象,比如list就不能作为key
        和list比较,dict查找和插入的速度快,占内存。
      • set
        也是一组key的集合,但不存储value,key不重复
        s = set([1, 2, 3]) 输入s返回{1, 2, 3}
        添加key .add(key)
        删除key .remove(key)
        两个set可以做数学意义上的交集、并集等操作 s1 & s2``s1|s2

    List+Tuple+Dict+Set小结

    对比 列表List 元组Tuple 字典Dict 集合Set
    创建 L = ['Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming'] Tu = ('Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming') Di = {'Adam':100, 'Lisa':90, 'Bart':93, 'Gechong':100, 'Kongming':100} s = set(['Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming'])
    显示 L[0] Tu[0] Di['Adam']和Di.get('Adam') if 'Test' in s: print ('Test') else:print ('No')
    遍历 print (L)和for循环 print (Tu)和for循环 print(Di)和for循环 print(Set)和for循环
    更新 append()和insert()和直接赋值 不可以更新 对应位置赋值即可 s.add()
    删除 pop()和pop(n) 不可以删除 s.remove()
    特点 有序,可以添加删除 指向的位置不可变 查找速度快、浪费空间、key不可以重复,且不可变(不能用list作key)、数据无序排放 像是把dict的key抽出来,两个set可以做数学意义上的交集、并集等操作

    全面了解python中的类,对象,方法,属性

    http://www.jb51.net/article/92405.htm

    相关文章

      网友评论

        本文标题:【python】基础

        本文链接:https://www.haomeiwen.com/subject/xqomottx.html