深度学习网络__Tensorflow__第二讲_python语法


Python 语法串讲

 

2.1

一、常用指令

√桌面点击右键  选择 Open Terminal 打开终端

√pwd  打印当前在哪个目录

√ls 列出当前路径下的文件和目录

√mkdir 目录名  新建目录

√cd目录名 进到指定目录

√python 运行 Python 解释器

√print “Hello World”

补充: 使用 pwd 命令打印当前在哪个目录,打印的是绝对路径。

           绝对路径:是以根目录(" / ")为起点的完整路径,以你所要到的目录为终点。

           相对路径:是你当前的目录(" . ")为起点的路径,以你所要到的目录为终点。 

           使用 cd 目录名 进到指定目录,如果指定的“目录名”是

                   . 表示当前目录

                   .. 表示当前目录的上一级目录

                   - 表示上一次所在目录

                   ~ 表示当前用户的 home 目录(即刚 login时所在的目录)

                     比如:         cd ..  返 回 上 级 目 录cd ../.. 返回上两级目录

                                        cd ~ 进入用户主目录 home 目录


二、常用基础语法点

√运算符: +---- * / %

√运算顺序:先乘除 再加减 括号最优先

√变量,就是一个标签,由非数字开头的字母、数字、下划线组成,它的内容可以是数值、字符串、列表、元组和字典。

√数值,就是数字。a = 100

√字符串,就是用一对儿双引号、或单引号引起来的内容,只要被引号引起来,就是字符串了。      b = ”Hello World”

100是数值   Vs   ”100”是字符串。      

√转义字符: \t 表示 tab     

                     \n 表示 换 行 

                     \ ” 表 示 ”  

√%s 占位,用%后的变量替换

举例:

a = 100

b = ” HelloWorld ” 

print ” point = %s \n \” %s   \” ”  % (a, b)  打印出:

point=100 

” Hello World ” 

2.2

一、列表

√ 列 表         [       ] 

c = [1,2,3,4,5,6,7]  

d = [”张三”,”李四”,”王五”]   

e =[1,2,3,”4”,”5”,d]

√用列表名[ 索引号 ]索引列表中的元素     

d[0]表示列表 d中的第零个元素“张三”

√用列表名[起 : 止]表示切片,从列表中切出相应的元素 前闭后开

c[0:2] 切出 [1,2]

c[ : ] 切出[1,2,3,4,5,6,7] 

√用列表名[起 : 止: 步长] 带步长的切片,步长有方向。

c = [1,2,3,4,5,6,7] 

切出 [5,4,3,2] 用c[4 :0 :-1]      切出[5,4,3,2,1]用 c[4 ::-1] 切出 [6,4,2] 用 c[-2 ::-2] 从倒数第二个开始一直切到头,步长-2

√修改:列表名 [ 索引号 ] = 新值

√删除:del 列表名[ 索引号 ]  

√插入: 列表名.insert(插入位置索引号,新元素)


二、元组

√元组 ( )     一旦定义不能改变f=(1,2,3)

三、字典

√ 字 典 { }
√字典里放着 {键:值, 键:值, 键:值} n 个键值对
   dic={1:”123”,”name”:”zhangsan”,”height”:180}
√用字典名[ 键 ] 索引字典中的值    

  dic[”name”] 表示字典dic 中键”name”对应的值”zhangsan”

√修改:字典名 [ 键 ] = 新值

√删除:del 字典名[ 键 ]  

√插入:字典名[ 新键 ] = 新值


2.3

一、vim 编辑器

√vim 文件名 打开或新建文本

√在 vim中 点击 i进入插入模式 可往文本里写内容

√ESC:q 退 出 vim

√ESC:wq 保存更改退出 vim

√ESC :q!  不保存更改退出vim

二、条件语句

√1、if条件成立 :

        执行任务

√2、if 条件 1 成立:

        执行任务 1

     else:

        执行任务 2

√3、if 条件 1 成立 :

        执行任务 1

    elif条 件 2 成 立 :


        执行任务 2

            ┊

    elif 条 件 n 成 立 :

        执行任务 n  

    else :

        执行任务n+1 


三、python语句代码层次

 Python 代码是使用四个空格的缩进表示层次关系的,从缩进我们可以看出这段条件语句分了三个层次,第一个层次是黄色的 block1,然后是红色的block2,最后是蓝色的 block3。


四、逻辑关系

 

== 等 于

!= 不 等 于

> 大 于

>= 大 于 等 于

< 小 于

<=   小 于 等 于and 与

or         或

 

 

 

 

 

 

2.4

循环语句

√1、for 变量 in range (开始值,结束值):

        执行某些任务

√2、for 变量 in 列表名:

        执行某些任务

√3、while   条件   :
       执行某些任务

√4、终止循环用 break

 

2.5

√turtle 模块

import turtle # 导入 turtle 模 块

t = turtle.Pen ( ) #用 turtle 模块中的 Pen 类,实例化出一个叫做 t 的对象

t.forward (像素点)  #让 t 向前走多少个像素点

t.backward (像素点)  #让 t 向前走多少个像素点t.left (角度)         #让 t 左转多少角度 t.right (角度)        #让 t 右转多少角度t.reset ( ) # 让 t 复 位

2.6  

一、函数

√1、函数(function):组织好的,可重复使用的,用来实现单一或相关联功能的代码段。

比如之前用过的 input()就是一个函数,可以直接使用函数,不用每次重新定义如何从控制台接收输入,所以函数是帮助实现代码复用的。

√2、定义函数:def    函数名   (参数表):

                      函 数 体 括号里的参数如果不需要可以为空

√3、使用函数:函数名 (参数表)   

如 :input("please input your class number:") 定义:def hi_name(yourname):

          print ”Hello %s”%yourname 使用:hi_name(”zhangsan”)

会输出:Hello zhangsan 

√4、函数返回值: return  

     def add(a,b):

       return a+b

     c=add(5,6)

     # c 被赋值为 add的返回值 11 

√5、内建函数:python解释器自带的函数

   abs(-10) 返 回 10 

二、模块

√模块(module):是一个 Python 文件,以.py 结尾,包含了 Python 函数等语句。先导入,再使用,用模块.函数名调用。

import time time.asctime ( )

输出:'Tue Jan 1621:51:06 2018'

三、包

√包:包含有多个模块 

from PIL importImage

四、变量作用域

局部变量:在函数中定义的变量,只在函数中存在,函数执行结束不可再用。全局变量,在函数前定义的变量,一般在整个代码最前面定义,全局可用。

2.7 

类、对象和面向对象的编程

√1、类(class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。物以类聚人以群分,类是可实例化出对象的模具。

√2、 实 例 化 : 对 象 = 类 () t = turtle.Pen()

√3、对象:是类实例化出的实体,对象实实在在存在,完成具体工作。

√4、面向对象:程序员反复修改优化类,类实例化出对象,对象调用类里的函数执行具体的操作。


在上图中,有动物、哺乳动物和猫。 动物是一个类,他们具有共同的功能:呼吸、移动和吃东西。哺乳动物也是一个类,他们是动物类里的子类,是在动物类的基础上多了喂奶的功能。猫是哺乳动物类的一个子类,猫类在哺乳动物的基础上多了捉老鼠的功能。

类命名时第一个字母常大写,比如 Animals、Mammals 和 Cats 的首字母都大写了。这些类的右侧列出了每个类具有的功能:比如呼吸、移动和吃东西是动物这个类具备的功能,在计算机中用函数的形式表示。喂奶是哺乳动物的功能,是哺乳动物这个类里的函数。捉老鼠是猫类具有的功能,是猫类的函数。

√上面的类是下面类的父类;下面类是上面类的子类

√子类实例化出来的对象,可以使用自身和父类的函数与变量

√5、类的定义: 

class 类名 (父类名) :

      pass

如果有父类,写在类名后面的括号里;如果没有父类,可以不写括号了。用关键词 pass 占个位置,之后再用具体函数把类补充完整。 

举例:classAnimals:

       pass

classMammals(Animals):

       pass

classCats(Mammals):

       pass

√6、类里定义函数时,语法规定第一个参数必须是 self 。

√7、init__函数,在新对象实例化时会自动运行,用于给新对象赋初值。

(1)                       将猫类实例化出一个叫 kitty 的对象,kitty 有自己的特征属性,比如身上有 10 个斑点:

kitty = Cats(10)        #实例化时运行  init 函数,给 spots 赋值,告知 kitty 有 10 个斑点

print”kitty.spots” #打印出 10

(2)                       kitty 可以做具体的工作,比如捉老鼠:

kitty.catch_mouse()#对象运行函数,必须用对象.函数名,调用类里的函数


                    #会运行 print ”catch mouse” 故打印出catch mouse

√8、对象调用类里的函数,用对象.函数名

√9、对象调用类里的变量,用对象.变量名

√10、类内定义函数时,如调用自身或父类的函数与变量,须用self.引导, 应写为 self.函数名self.变量名

代码验证:




补充:

Python 中虽然没有访问控制的关键字,例如 private、protected 等等。但是,在Python 编码中,有一些约定来进行访问控制。

单下划线、双下划线、头尾双下划线说明: 

_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 frommodule import *

  foo:双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。

  foo__: 头尾双下划线定义的是特列方法,类似init() 之类的。

2.8

√一、文件写操作

import pickle

开:文件变量= open(”文件路径文件名”, ”wb”) 存:pickle.dump(待写入的变量,文件变量)

关:文件变量.close()     

代码验证:          


√二、文件读操作

import pickle

开:文件变量= open(”文件路径文件名”, ”rb”) 取:放内容的变量 =pickle.load(文件变量)

关:文件变量.close()                      

代码验证:



三、本章小结

√1、ubuntu 终端的简单使用

√2、vim编辑器的基本用法

√3、python 里的数据类型:数值、字符串、列表、元组和字典

√4、python的条件语句和循环语句

√5、代码纵向对齐表层次关系

√6、函数、对象、类、模块、包还有面向对象的编程思想

√7、文件读写操作

 

猜你喜欢

转载自blog.csdn.net/qq_39815222/article/details/80155212