Python基础知识

一:基础知识

1:基本数据类型

   列表:鱼C论坛说“列表:一个“打了激素”的数组”形容十分贴切    以中括号[1,2,'大王',1.2]表示

           方法:添加一个 list.append(‘内容’)    扩展列表   list.extend(['内容1','内容2']) (也可以+但不建议使用)    插入   list.insert(1,'内容')   获取元素   与数组一样 list[2]

                    删除  list.remove('内容')  del list[位置]     弹出:list.pop(索引)   列表分片:list[1:9:2]获得一个新的列表,为原列表重第一个到第九个每2个取一个值   反转 list.reverse()

                     排序:sort()从小到大 默认归并排序

    元组:以小括号表示() 无法修改内容的列表  其他操作与列表一致     更新元组(在原元组的基础上新建一个元组,原元组被回收)tuple[:2]+('内容1',)+tuple[2:]

    函数:

 1 #定义一个函数
 2 def add(num1,num2):
 3      """这里可以写函数的说明文档"""
 4      return num1+num2
 5 #Python支持默认参数值
 6 def add1(num1 = 2 ,num2 = 5):
 7      """这里可以写函数的说明文档"""
 8      return num1+num2
 9 #Python 同样支持可变参数
10 def  countnum(*num):
11      print("有%d个参数" % len(num))
12      print(“第二个参数是:”,num[1])

     字典:映射类型,以大括号{'语文':'A','数学':'A','英语':'B'} 项(item()),键(key()),值(valune())

               创建字典:x=dict(语文='A',数学='A',英语='B')(dict为关键字)

                方法:x.clean();          x.copy();返回字典      x.get("语文");返回value      x.pop();  x.keys();返回含所有key的列表   x.values();返回含所有value的列表     

     集合: 以大括号set1={"1号","2号","3号","4号"},集合中每一个元素不重复,

                  set2=set(["1号","2号","3号","4号"])

                  set1==set2

                 输出:true

                 方法:add();remove();

   变量:Python与大多数其他计算机语言的做法稍有不同,它并不是把值存储在变量中,而更像是把名字贴在值上边,所以大多数python程序员会说“Python没有变量,只有名字”

   字符串: 保持原始字符串  方案一:加r  :string= r ‘C:\now’  方案二:三重引号  

   操作符优先级:**(幂)//(语言除法)*(乘) /(数学真实除法) %(取余) +(加) - (减) <(小于) >()大于  and(与) not(非) or(或)    例: 3<4<5与3<4 and 4<5 

   输出:print   输入:input ("请输入合法字符:"); raw_input("什么东西都能接受");

   分支与循环:(插代码)

   

 

     文件:打开文件:open(file,mode='r',buffering=-1;encoding=Node;errors=None,newline=None,closefd=True,opener=None)  返回一个文件对象

                                'a'写入模式打开文件,文件存在·,则在末尾追加写入

                方法:read();       readline();           write(str);          writelines(seq);         seek(offset ,from);          tell();返回当前在文件中的位置

               关闭文件:close();

 

4:文件操作

(1)打开文件: 文件句柄 = file('文件路径', '模式')
python中打开文件有两种方式,即:open(...) 和 file(...) ,本质上前者在内部会调用后者来进行文件操作,推荐使用 open。
1、打开文件的模式:
  r, 只读模式【默认】
  w,只写模式【不可读;不存在则创建;存在则删除内容;】
  a, 追加模式【不可读;不存在则创建;存在则只追加内容;】
2、"+" 同时读写某个文件:
  r+,可读写文件。【可读;可写;可追加】
  w+,写读
  a+,追加读

5:函数

①格式

复制代码
1     def 函数名(参数):
2             ....
3             函数体
4             ....
5             return 返回值
6     函数名()
复制代码

②形参:  def func(name): // name 叫做函数func的形式参数,简称:形参
③实参:  func("solo") // 'solo' 叫做函数func的实际参数,简称:实参
④默认参数: def stu_register(name,age,course,country="CN") // 位置参数
⑤关键参数: stu_register(age=22,name='lzl',course="python")  // 关键参数必须放在位置参数之后

二:常见模块

Python中类库有三种

① 、Python内部提供的模块
②、业内开源的模块
③、程序员自己开发的模块:Python脚本的名字不要与模块名相同

(1)time和datatime模块
  时间相关的操作,时间有三种表示方式:1、时间戳 1970年1月1日之后的秒,即:time.time()
                                                                      2、格式化的字符串 2014-11-11 11:11, 即:time.strftime('%Y-%m-%d')
                                                                      3、结构化时间 元组包含了:年、日、星期等... time.struct_time 即:time.localtime()

(3)os模块:用于提供系统级别的操作(比如目录、路径等的操作)

复制代码
 1 import os
 2 os.getcwd() #获取当前工作目录,即当前python脚本工作的目录路径
 3 os.chdir("dirname")  #改变当前脚本工作目录;相当于shell下cd
 4 os.curdir  #返回当前目录: ('.')
 5 os.pardir  #获取当前目录的父目录字符串名:('..')
 6 os.makedirs('dirname1/dirname2')    #可生成多层递归目录
 7 os.removedirs('dirname1')   # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
 8 os.mkdir('dirname')   # 生成单级目录;相当于shell中mkdir dirname
 9 os.rmdir('dirname')    #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
10 os.listdir('dirname')    #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
11 os.remove() # 删除一个文件
12 os.rename("oldname","newname") # 重命名文件/目录
13 os.stat('path/filename') # 获取文件/目录信息
14 os.sep    #输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
15 os.linesep    #输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
16 os.pathsep    #输出用于分割文件路径的字符串
17 os.name    #输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
18 os.system("bash command")  #运行shell命令,直接显示
19 os.environ  #获取系统环境变量
20 os.path.abspath(path)  #返回path规范化的绝对路径
21 os.path.split(path)  #将path分割成目录和文件名二元组返回
22 os.path.dirname(path) # 返回path的目录。其实就是os.path.split(path)的第一个元素
23 os.path.basename(path) # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
24 os.path.exists(path)  #如果path存在,返回True;如果path不存在,返回False
25 os.path.isabs(path)  #如果path是绝对路径,返回True
26 os.path.isfile(path)  #如果path是一个存在的文件,返回True。否则返回False
27 os.path.isdir(path)  #如果path是一个存在的目录,则返回True。否则返回False
28 os.path.join(path1[, path2[, ...]]) # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
29 os.path.getatime(path)  #返回path所指向的文件或者目录的最后存取时间
30 os.path.getmtime(path)  #返回path所指向的文件或者目录的最后修改时间
复制代码

(4)sys模块:用于提供对解释器相关的操作(比如退出程序、版本信息等)

      pickle模块:

 1 import pickle
 2 
 3 my_list = [123,3.14,'2号',['another list']]
 4 #文件后缀为.pkl或者.pickle
 5 pickle_file = open('E:\\my_list.pkl','wb')
 6 #使用dump保存列表,
 7 pickle.dump(my_list,pickle_file)
 8 pickle_file.close()
 9 
10 
11 pickle_filetwo = open(“E:\\my_list.pkl”,"rb")
12 #用load方法进行加载
13 my_listtwo = pickle.load(pickle_filetwo)
14 print(mylisttwo)

  三:面向对象

类与对象:对象=属性+方法,类是对象的抽象,例如:“人”是一个类,“阿苍老师”就是一个对象,“拍电影”是他的一个方法,“大长腿”是他的一个属性

 

 

 

 

 

 

 

 

posted @ 2018-05-28 22:08  阿苍老师  阅读(103)  评论(0编辑  收藏  举报