python 基础(一)

发布时间:2019-08-13 07:37:10编辑:auto阅读(1219)

    • 第一个程序

      hello.py 以下为内容

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    __author__ = 'teng'
    print 'hello'
    #!/usr/bin/env python

    表示使用 特定的解释器执行 如果是python3 将python改为python3

    # -*- coding:utf-8 -*-

    表示将代码编码设置为utf-8(针对Unicode的可变长度字符编码,用1到6个字节编码UNICODE字符)

     如果不写不能显示中文 默认ascii码(1个字节)来读

    运行 python hello.py 

    变成可执行文件

    sudo chmod +x hello.py 

    运行./hello.py

    wKiom1azEHGwKPIQAABm3Apgkvc198.png


    • 注释

    # 单行注释 

    """多行注释"""

    一般在文件中在正文前使用"""多行注释"""表明用处

    • 脚本参数

    python flask.py 127.0.0.1:8000

    如何捕获 flask.py 127.0.0.1:8000

    flask,py 为 arg[0]

    127.0.0.1:8000 为arg[1]

    flask.py代码

    import sys
    print sys.argv

    运行

    python flask.py 127.0.0.1:8000

    结果

    ['flask.py', ‘127.0.0.1:8000']

    argv 为一个列表

    • 字节码

       import sys
      import hello
      print sys.argv


        运行 => 生成hello.pyc文件

        pyc编译生成 字节码 (可以反编译)

        如果编译完成 => 可以删除hello.py => import hello依然可以导入

    • 变量

      python 是动态语言 

      不需要声明  name = "红雀"

      name 就是一个引用就是C的*name 指向 内存里"红雀"这个字符串 

      变量名要求=> 字母下划线和数组组成 但数字不能开头 内部关键字不能使用

      name1 = name name的地址给了name1:内存公用

      变量并不是最好的选择 变量相对于fp是灾难 可以用monad解决IO

      当然上述是理论 

    • 字符串

            c中"hello"为一个字符串数组 :

            地址连续=>python 将其封装 如若存在相同字符串 内存固定

            修改=>重新创建

            内部机制 以下请看图自行理解 提示字符串缓存池

            wKiom1azIHnhY0nEAABB1eIb2UI587.png

            +每次使用一次就在内存中申请一个新的内存

            占位符 %s(字符串) %d(数字)=>%xx

                        {0}  {1}  => .format(xx,xx)

    • 输入

    raw_input: 接收为字符串 

    input:输入什么类型 接收什么类型

    模块getpass 密码隐形

    流程控制

    if else 

    name = raw_input("请输入用户名:")
    if name == "红雀":
        print "登陆成功"
    else:
        print "登陆失败"

            值对比 == 

            引用对比 is

    多种形式(case)

    name = raw_input("in:")
    if name == "teng":
        print "good"
    elif name == "rommel":
        print "nice"
    else:
        print "bad"

    缩进=>自行养成风格

    import getpass
    name = raw_input("name:")
    pwd = getpass.getpass("password:")
    if name == "teng" and pwd == "teng":
        print "success"
    else:
        print "fail"
    • 基本数据类型

      单值:数字(int32/64之分)、字符串、布尔值

      集合:列表、元组、字典、set(哈希表)




关键字

上一篇: python 线程池学习

下一篇: python调试代码