python3.5.1语法

时间:2021-03-08 20:55:49

1、print (变量名)

   print(“字符串”)

2、a=1 id(a)返回a在内存中的地址

3、可以用table弹出提示
   #coding:utf-8

4、输入3/2 结果为:1.5
    输入3//2 结果为:1
    %:取余

5、3**2:表示3的平方
     3**3:表示3的三次方

6、逻辑运算符:and、or、not

输入:1>2 and 2<3 输出:FALSE
输入:1>2 or 2<3 输出:TRUE
输入: not 1>2 输出:TRUE

7、移位:<<、>> 输入:1<<1 输出:2(1的二进制是01,左移一位是10,10就是2)

8、数据类型:输入type(数据) 输出数据类型
    整形(默认)、长整形(123L)?、浮点型(有小数点)、复数(a=3.14j)

9、字符串:str="123" 或者 str='123'
    三引号:用来格式化输入字符串"""任意格式"""

10、取出字符串中的字符: 输入:a="abcde"
输入:a[0] 输出:a
输入:a[0]+a[1] 输出:ab
输入:a[1:4] 输出:bcd
输入:a[:4]或者a[4:]输出:abcd或者e
输入:a[::n] 输出:n步一取,从取a开始
输入:a[-1] 输出:e,最后一个
输入:a[-2:-5:-1] 输出:dcb,-1代表取的方向为反

11、打印出引号:str = "hello \""

换行:\n

12、连接两个字符串:可用+号

13、字符串重复:str*n,重复n次

14、判断字符串是否在另一字符串中:"str1" in "str2",返回TRUE或者FALSE
  判断字符串是否不在另一字符串中:"str1" not in "str2",返回TRUE或者FALSE
  返回最大值或者最小值:max(str)、min(str)
  比较两个字符串:cmp(str1,str2),一模一样返回0

15、元组:student=("jude",20,"man"),取出:studen[0]="jude"#不可更改类型
  空元祖:student=()
  单元组:student=("jude",) 必须要加逗号,否则就不是元组类型
  使用:name,age,sex=t

16、列表:list=["jude",20,"man"]#可更改类型
1增加元素:list.append("beautiful")
1删除元素:list.remove("beautiful")或者list.remove(list[3])
1zip(list1,list2):把两个列表中对应的元素拿出来做成一个元组,所有的元组组成一个新的列表

17、字典:唯一的映射类型。dic={"name":"jude","age":20,"sex":"man"}。key:value,key可以是任何变量,也可以是数字或者字符串
  取值:dic["name"]
  增加值:dic["what"]="whatwhat",增加的位置不确定
  修改:dic["name"]="haha"
  dic.pop("name"):返回jude,并在字典中删除name项
  dic.clear():删除字典中所有元素
  del(object):系统函数,可以删除任何对象

18、流程控制:
  if else:
  if what==what:
    do1
    do2
  else:
    do3
    do4
  #相同缩进,代表在同一块中
  elif(else if)

19、for循环:for x(变量) in "abcdefg"(序列)
跳出本次循环:continiu;跳出所有循环:break。
站位桩:pass,不做操作,留个位置以后用

20、while循环:while 条件(True or False):
        do
21、在for和while循环后面加

  else:

    do#表示正常运行结束

22、bool:True和False

23、range(循环结构序列)的使用:range(100)->[0~99],range(1,101,1)->[1~100],生成列表

24、函数:def 函数名 (参数列表):
  函数体
  将变量设置成全局变量:global x。
  python函数没有重载
  %s:打印字符串
  %d:打印数字
25、把元组或者列表作为参数:def fun(x,y)
                print("%s,%s" %(x,y))

               t=("name","jude")
               fun(*t)
26、把字典作为参数:fun(**t)

27、冗余元组参数:def fun(x,*args):
          print x
        #*args:将多余参数放在args元组里面
        fun(1,2,3)

28、冗余字典参数:def fun(x,**args):
          print x
          #**args:将多余参数放在args字典里面
          fun(1,y=2)

29、任何单独元素如元组和列表只能当做一个函数参数

l30、ambda匿名函数:只要是一个表达式的函数,就可以用此函数来表达
   fun=lambda x,y:x*y
   fun(1,2)--->2

31、reduce函数:
L=range(1,6)
def f(x,y)
  return x*y

reduce(f,l)-->1~5累乘=120
第一个参数:函数名字,第二个参数:作用域
--->reduce(lambda x,y:x*y,L)?

32、用字典来实现类似switch的功能:{1:case1,2:case2}.get(x,lambda *arg,**key:)()
operator = {"+":jia,"-":jian,"*":cheng,"/":chu}#值都是函数对象,事先声明好
operator["+"](2,3)--->5
<-->operator.get("")(2,3)#如果没有key,用get函数不会报错
使运算结果都为浮点型:from __future__ import division

33、常用简单函数:
:abs(num) -->绝对值
:max(序列)-->最大值
:min(序列)-->最小值
:len(序列)-->长度
:divmod(a,b)-->a,b的商、余
:pow(a,b,[c])-->a的b次方对c取余,c可有可无,没有时不取余
:round(a,[b])-->返回小数点后b位的a
:callable(函数名)-->测试函数是否被定义
:type(类型)-->返回类型名称
:insinstance(类型名称,类型)-->判断类型名称是不是某类型
:cmp(变量a,变量b)-->比较大小
:range(a)-->生成a大小的列表
:强制转换-->int("")...
34、常用复杂函数:
1、string函数(也可以import string,使用string里的函数)
str.capitalize(),首字母大写
str.replace("old","new"),替换
str.split(".",3),按“.”来切割3次
2、filter函数,过滤列表特定元素的函数
3、zip,并行几个列表的函数
4、map,和zip一样,只是多一个参数,此参数是个函数
5、ruduce,用于列表的递归计算

35、每一个.py就是一个模块

36、正则表达式:import re
元字符:[]、^、$、\
定义:res="top tip tcp ttp"

输入:re.findall(r"top",res),查找top
输出:["top"]

输入:re.findall(r"t[io]p",res),查找tip和top
输出:["tip","top"]

输入:re.findall(r"t[^io]p",res),查找除了tip和top
输出:["tcp","ttp"]

输入:re.findall(r"^top",res),判断res行首有没有top
输入:re.findall(r"ttp$",res),判断res行尾有没有ttp

在[]中^和$不起原来的作用,-->[0-9]、[abc]
\用于转义或者取消元字符。。。
x=re.compile()-->编译正则对象

37、a=input()#从键盘输入

38、值的拷贝:1、直接把b=a,那么a和b都指向同一个地址,改变其中一个都会改变另一个。
        2、浅拷贝:import copy b=copy.copy(a),b就是另一个地址,但是a和b子元素地址依然相同
          3、深拷贝:b=copy.deepcopy(a),值独立

39、对文件的操作用:open或者file
hand_file=open(path)#文件句柄
hand_file.read() #读取内容
hand_file.close() #关闭句柄

40、目录操作:import os
os.mkdir(path[,mode])#当前目录增加新建文件夹
os.makedirs(name[,mode])#os.makedirs("a/b/c")多级目录
os.rmdir(path)#删除目录
os.removedirs(path)#os.removedirs("a/b/c")删除多级目录
os.listdir(path)#查看当前目录列表,path=.表示当前目录,path=/表示根目录
os.getcwd()#获得当前目录
os.chadir(dir)#切换目录
os.walk(top,topdown=True,onerror=None)

41、异常处理:
接收异常:
try:
  可能出错的语句
except IOError,msg:
  pass
except NameError,msg:
  pass
finally:(无论是否有错误,finally里面的代码都要执行)
  pass
#如果是traceback异常,表示解释器不明白何处除了问题,需要开发者自己找问题

42、抛出异常:可以在任何地方抛出异常
raise TypeError("error")#异常名字应该在python中存在

43、类与对象:
Python类的定义:
>>>class MyClass:#类名首字母大写
成员变量
成员函数#至少一个形参self
对象的创建:
>>>jude = MyClass()