美文网首页
6Python语言编程基础

6Python语言编程基础

作者: Henrytong | 来源:发表于2018-02-19 16:10 被阅读8次

    Python

    技能目标
        理解编程基本原理和思想
        掌握python语言的基础语法
        能够使用python进行基本的开发工作
        熟练使用项目开发IDE:eclipse,PyDev
        能够使用Python开发简单入门的游戏和网页
    第一节
        概述
        环境配置
            python安装
                python解释器
                配置Windows环境变量
                    配置pip和easy install,D:\Python27\Scripts
            Java环境变量配置
            eclipse下载安装
                在help中查找PyDev进行安装
                    在创建项目时需手动加入已安装好的python解释器:Interpreter
                注意:python2.7默认编码格式是ASCII,3.0默认是utf-8
    第二节
        数据表示,即数据类型
            概述
                接入一个外接包
                    requests:用于提供很多,针对网页上的抓取,以及相关的函数
                字符串
                    单引号
                    双引号
                    三引号
                    Format字符串
                    使用+号连接字符串
                变量
                    命令规则:第一个字符必须是字母或下划线,其余字符可以是字母,数字,下划线,区分大小写
                字面常量
                    常量不会被改变
                    比如5,6等等固定值
                注释
                    #号键
            numerics Type
                int(包含boolean
                float
                complex
                打印数据类型的方法type(变量名)
                运算符//是向下去整
            ,sequences
            ,mappings
            ,classes
            ,instances
            exceptions
    第三节
        数据结构
            print打印拓展
                打印中文字符串
                    # coding=utf-8
                换行符:\n
            List
                创建list
                    不要求list中必须有相同元素
                打印list
                    在打印时,需要将list类型转化为str
                        str(list名)
                访问list
                    list名[]
            元祖tuple
                创建之后无法被更改,删除和修改都不行
                将list中的方括号改为圆括号即可
                list中可以使用的函数,tuple都可以使用
            list和tuple的对比
                tuple中可以包含list
                    mixed_tuple = (1,2,['a','b'])
                Tuple是不可变的list
                相同点
                    定义方式相同
                    元素都是按次序排列
                    索引都是从0开始
                    负数索引与list一样从tuple的尾部开始计数
                不同点
                    tuple没有append或extend方法
                    tuple没有remove或pop方法
                tuple可以一次赋多值
                内置函数
                    len([1,2,3])
                        打印list长度
                    【‘Hello’】* 4
                        对一个list元素进行重组
                    list[-1]
                        代表从右边开始数第2位
                    list[1:]
                        代表从第二个元素开始的所有元素
                    3 install【1,2,3】
                        判断一个元素是否在list中
                    [1,2,3]+[4,5,6]
                        拼接
            dictionnary
                键值对
                常用方法
                    创建
                        phone_book = {'Tom':123,'Jerry':456,'kim':789}
                    修改
                        phone_book["Tom"] = 888
                    新增
                        phone_book["Henry"] = 666
                    删除
                        del phone_book["kim"]
                    清空内容
                        phone_book.clear()
                    删除dictionnary
                        del phone_book
                特性
                    一个键必须是唯一的
                        当有重复时不会报错,会依次取第一个出现的键
                    键是不变的
                        不能使用list充当键
                        字符串
                        数组
                        元组tuple
                内置函数
                    比较两个字典元素
                        cmp(dict1,dict2)
                    计算字典元素个数,即键的总数
                        len(dict)
                    输出字典可打印的字符串表示
                        str(dict)
                    返回输入的变量类型,如果变量是字典就返回字典类型
                        type(variable)
                内置方法
                    删除字典内所有元素
                        radiansdict.clear()
                    返回一个字典的浅复制
                        radiansdict.copy()
                    创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
                        radiansdict.fromkeys()
                    返回指定键的值,如果值不在字典中返回default值
                        radiansdict.get(key,default=None)
                    如果键在字典dict里返回true,否则返回false
                        radiansdict.has_key(key)
                    以列表返回可遍历的键值元组数组
                        radiansdict.items()
                    以列表返回一个字典所有键
                        radiansdict.keys()
                    和get()类似,但如果键没有存在于字典,并将添加键并将值设为default
                        radiansdict.setdefault(key,default=None)
                    把字典dict2的键/值对更新到dict里
                        radiansdict.update(dict2)
                    以列表返回字典中的所有值
                        radiansdict.values()
        函数Function
            def定义函数
                def say_hi():
            带参数的函数
                设置参数的默认值
                    def repeat_str(str,times = 1):
                参数的取值:形参和实参是一一对应的关系
                *nums代表元组
                **words代表数组
                    word = "python",another_word = "java"
            return:返回函数值
            全局变量
                global
                可以在函数内进行定义,定义后变量的值为之后改变的值
            局部变量
    第四节
        Control Flow控制流
            if for语句
            for语句
                for i in range(1,10):
                    rang指定一个整数范围,包括第一个值不包括最后一个值
                遍历list,tuple,dictionnary
            用户输入函数
                input
            while语句
                当某个条件成立的时候会一直运行循环体,直到条件不成立
                while guess_flag == False:
            break
                跳出当前循环,执行循环之后的代码
            continue
                忽略continue之后的代码,继续从循环头开始
            pass
                继续执行帕森斯之后的代码,可以理解为什么也不做
    第五节
        输入输出
            接受用户的输入:input()
                str_1 = input("Enter a string: ")
                str_2 = input("Enter another string: ")
                python2.7要求输入字符串格式的数据
            输入格式:str(),format
                print("str_1 is : " + str(str_1) + "str_2 is :" + str(str_2))
                print("str_1 is {1} + str_2 is {0}".format(str_1,str_2))
            写出文件
                # 创建一个open实体对象,sentences.txt可以为绝对路径,‘w’表示写文件模式
                f = open('C:\Users\Administrator\Desktop\sentences.txt','w')
                f.write(some_sentences)
                f.close()
            读入文件
                读文件read是默认的
                f =open('C:\Users\Administrator\Desktop\sentences.txt')
                while True:
                    line = f.readline()
                    if len(line) == 0:
                        break
                    print(line)
                f.close()
    第六节
        异常处理
            语法
                try:
                <语句>        #运行别的代码
                except <名字>:
                <语句>        #如果在try部份引发了'name'异常
                except <名字>,<数据>:
                <语句>        #如果引发了'name'异常,获得附加的数据
                else:
                <语句>        #如果没有异常发生
            语法错误(Syntax Errors)
                while True:
                    try:
                        x = int(input("Please enter a number"))
                        break
                    except ValueError:
                        print("Not valid input,try again.......")
            异常(Exceptions)
                try:
                    f = open('myfile.txt')
                    s = f.readline()
                    i = int(s.strip())
                except OSError as err:
                    print("OS error: {0}".format(err))
                except ValueError:
                    print("Could not convert data to an integer.")
    第七节
        面向对象处理(Object-Oriented)
            类(class)
                现实世界中的一些事物的封装,如:学生
                属性,如名字、成绩
            引用
                通过引用对类的属性和方法进行操作
            实例化
                创建一个类的具体事例对象,如学生张三
            代码
                class Student:
                    def __init__(self,name,grade):
                        self.name = name
                        self.grade = grade
                        
                    def introduce(self):
                        print("hi! I'm "+ self.name)
                        print("My grade is : "+ str(self.grade))
                    def improve(self,amount):
                        self.grade = self.grade + amount
                        print("My grade add : "+ str(self.grade))
                Henry = Student("Henry",99)
                Henry.introduce()
                Henry.improve(1)
            设计代码思路
                初始化参数
                自我介绍
                增加分数
                创建对象
                对象调用方法
        装饰器(decorator)
            代码设计思路
                定义一个做蛋糕函数
                定义一个加蜡烛函数
                通过装饰器功能加蜡烛
                输出加蜡烛后的结果
            装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码并继续重用
            @符号是装饰器的语法糖,在定义函数的时候使用,避免再一次赋值操作
            代码
                def add_candles(cake_func):
                    def insert_candles():
                        return cake_func() + "and candles"
                    return insert_candles
                # 注意:return cake_func()加括号表示函数执行完成的结果;return insert_candles表示函数对象
                
                @add_candles
                def make_cake():
                    return "cakes 22"
                    print(6)
                # @add_candles这句话相当于make_cake = add_candles(make_cake)
                print(make_cake())
    第八节
        开发一个小游戏
            GUI:Graphical User Interface
                创建一个GUI程序
                        1、导入 Tkinter 模块
                        2、创建控件
                        3、指定这个控件的 master, 即这个控件属于哪一个
                        4、告诉 GM(geometry manager) 有一个控件产生了。
            tkinter:GUI library for Python
                Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .
            代码
                from Tkinter import *  #导入库
                import Tkinter         #导入包
                import tkMessageBox    #导入包
                top = Tkinter.Tk()
                w = Label(top,text = "abc")
                w.pack() # 将小部件放置到主窗口中
                # tkMessageBox.showinfo("title", "message")
                tkMessageBox.askyesnocancel("问答", "Enter a number")
                top.mainloop()# 进入消息循环
    第九节
        制作一个简单网页
            1. 安装python2.7
                easy_install windows installer(python 2.7 32bit)
            2. 安装lpthw.web
                easy_install lpthw.web
            3. 创建目录
            4. 目录下创建app.py
            代码
                import web
                
                urls = ('/','index')
                
                app = web.application(urls,globals())
                
                class index:
                    def GET(self):
                        greeting = "Hello!"
                        return greeting
                    
                if __name__ == "__main__":
                    app.run()

    相关文章

      网友评论

          本文标题:6Python语言编程基础

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