python3.x 快速入门

发布时间:2019-09-21 10:47:08编辑:auto阅读(1815)

    Edit the > 2018/6/15 11:26:53

    1认识Python

    人生苦短,我用python
    - 优雅,明确,简单 是python设计哲学
    - python的设计目标之一, 是让代码具备高度的可阅读性
    - python 被广泛用于web程序,GUI开发,操作系统,科学计算,人工智能,游戏等领域;


    python的特点

    • 是一种动态语言
    • 被设计成可扩充的
    • 是一种完全面向对象的语言
    • 语法简洁,开发效率高,维护成本低
    • 跨平台,功能强大

    2python的版本与选择

    • python2.x与python3.x
    • python核心团队计划在2020年停止支持python2
    • python2.7是最后一个python2.x版本
    • 建议使用pytho3.6.x进行学习

    3安装python开发环境

    下载pythonhttps://www.python.org/downloads/release/python-365/
    - windows环境
    - window版本选择.可执行的安装包
    - macos环境:python下是默认python2的. 所以要切换python 很简单. 直接敲python3 即可
    - linux环境



    - 关于IDE的选择:PyCharm


    4基本语法规则

    4.1选择编译

    #!/use/bin/python3
    
    #在mac和linux环境下要加#!/use/bin/python3  注明解释器要用这个编译
    

    4.2注释

    # 单行注释
    
    '''
    多行注释
    '''
    
    """
     多行注释
    """
    

    4.3代码块

    # python是用空格来代表代码块的 不像js 和java 等于语言里面的 {}
    if True:
    print("true")
    else:
    print("false")
    

    4.4数据结构

    1. Number
      • int(x [,base ]) 将x转换为一个整数
      • long(x [,base ]) 将x转换为一个长整数
      • float(x ) 将x转换到一个浮点数
      • complex(real [,imag ]) 创建一个复数 *
      • str(x ) 将对象 x 转换为字符串
      • repr(x ) 将对象 x 转换为表达式字符串
      • eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
      • tuple(s ) 将序列 s 转换为一个元组
      • list(s ) 将序列 s 转换为一个列表
      • chr(x ) 将一个整数转换为一个字符
      • unichr(x ) 将一个整数转换为Unicode字符
      • ord(x ) 将一个字符转换为它的整数值
      • hex(x ) 将一个整数转换为一个十六进制字符串
      • oct(x ) 将一个整数转换为一个八进制字符串
    2. String
    3. List(列表)
    4. Tuple(元组)
    5. Sets(集合)
    6. Dictionary(字典)

      a = 10
      b = 2.3
      c = True
      d = 3 + 4j # 复数 j复数单位
      print(a)
      print(b)
      print(c)
      print(d)

      type() 判断数据类型

      print(type(a))
      print(type(b))
      print(type(c))
      print(type(d))

    4.5变量

    # 变量
    '''
    声明时不付值是不会被使用的
    第一个字符必须是字母或_开头
    '''
    a1 = 200
    b1 = c1 = d1 = e1 = 1  # 多变量赋值
    a2, b2, c2 = 1, 2.3, "我"  # 分别赋值
    print(b1, c1, d1, e1)
    print(a2, b2, c2)
    del a1  # 删 对象
    

    4.6运算符

    4.6.1算术运算符

    print(5 ** 3)  # 幂运算 5的3次方
    print(7 // 3)  # 不要余数 取整商
    

    4.6.2比较运算符

    和其他语言相同

    4.6.3赋值运算符

    和其他语言相同

    4.6.4逻辑运算符

    and or not 与或非 #python
    && || ! 其他编程语言

    4.6.5位运算符

    按照二进制位 来运算的
    & 与
    | 或
    ^ 亦或
    ~ 按类取反
    移位 >>右 <<左

    4.6.6成员运算符

    in 在
    not in 不在
    在一个集合里有还是没有 该值

    4.6.7身份运算符

    表示对象的存储单元的
    is
    is not
    是不是引致一个对象

    4.6.8运算符优先级

    指数>位运算>乘除摸加减等

    4.7string类型操作

    # python中没有字符类型
    #拼接
    a = 'asdf'
    b = "asdfasd"
    c = """
    多行
    字符
    串
    """
    print(a + b + c)
    
    
    # 在cd之间插入其他字符
    str1 = "abcdefg"
    print(str1[:3] + "123" + str1[3:])
    
    # 截取
    print(str1[2:5])
    
    # 格式化
    print('ABCD%d' %(123))
    print('%x' %(100))
    print("name:%s,age:%d" %("Tom",21))
    

    4.7函数

    def hello(str):
    print("hello: %s" % (str))
    
    
    hello("tom")
    
    
    def fun01(a, b):
    return a + b
    
    
    print(fun01(1, 2))
    
    
    def fun02(a=2, b=4):
    return a + b
    
    
    print(fun02(2, 2))
    print(fun02())
    

    4.8变量的作用域

    '''
    L   (local) 局部作用域
    E   (Enclosing) 闭包函数外的函数中
    G   (Clobal)  全局作用域
    B   (Built-in)  内建作用域
    '''
    x = int(32)  # 建内作用域
    g_a = 0  # 全局作用域
    
    
    def function03():
        o_c = 1  # 闭包作用域
    
    def function04():
        i_b = 3  # 局部作用域
    

    .
    #空函数 pass占位符
    def function05():
    pass

    4.9模块

    模块

    4.10流程控制

    # 循环语句
    n = 100
    sum = 0
    counter = 1
    while counter <= n:
        sum += counter
        counter += 1
        print(sum)
    
    # 嵌套
    if True:
        if True:
            pass
        else:
            pass
    else:
        pass
    
    # 循环输入;
    while True:
    mun = int(input("请输出一个数字"))
    print("输出的数字的是", mun)
    
    counter = 0
    while counter < 3:
        print("counter:", counter)
        counter += 1
    else:
        print("counter", counter)
    # 在python 后面是可以添加else 语句的
    counter = 0
    while counter < 3:
    print("counter:", counter)
        counter += 1
    else:
        print("else-counter", counter)
    
    # for 循环语句 后面是可以添加else 语句的
    for a in [1, 2, 2.51, 5]:
        print(a)
    else:
        print("haha")
    
    for a in range(0,5):
        print(a)
    
    for a in range(3,5):
        print(a)
    
    for a in range(1,5,2):
        print(a)
    

    4.11 内置数据结构

    # 列表为例
    list=["abcd",123,3.14,True]
    print(list*3)#连续输出3次
    print(list[0])
    print(list[3])
    
    list2=["haha",100]
    #加号拼接
    print(list+list2)
    #截取片段
    list[0]="ABCD"
    list[1:3]=[321,99.99]
    

    # 集合
    set1 = {"tom", "marry", "jack", "rose", "tom"}
    set2 = set("asdfqwer")
    print(set1)  # 重复的tom 被去掉了
    
    # 判断里面是不是有这个集合元素
    if "jeck" in set1:
    print("zai")
    else:
    print("bu zai")
    
    set3 = set('adsa12345')
    print(set2)
    print(set3)
    # 集合的差集
    print(set2 - set3)
    # 集合的并集
    print(set2 | set3)
    # 集合的交集
    print(set2 & set3)
    # 不同是存在的
    print(set2 ^ set3)
    


    • List(列表)
      可以看成数组
      [var1,var2,var3,…]
    • Tuple(元祖)
      可以看成数组.但是里面的元素不能修改.只读的列表
      (var1,var2,var3,…)
    • Sets(集合)
      可以看成数组.但是里面的元素不能重复
      {var1,var2,var3,…}
    • Dictionary(字典)
      以键值对成堆出现的
      {key1:var1,key2:var2,key3:var3,…}

    strint ,元祖 ,列表 都属于序列 所以都是for循环

关键字