• 通过游戏学python 3.6 第一季 第三章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码 可复制直接使用 娱乐 可封装 函数


     
     猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码
     
     1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码 
     2 
     3 import random
     4 secrst = random.randint(1,99)
     5 
     6 number = secrst
     7 
     8 amount = random.randint(3,8)
     9 print('本次游戏次数为',amount,'')
    10 
    11 count=0
    12 while count<=amount:
    13     try:
    14         conversion=input('请猜数字')
    15         guess=int(conversion)
    16 
    17         if guess == number:
    18             print('猜对了')
    19             break
    20         elif guess > number:
    21             print('大了')
    22         else:
    23             print('小了')
    24 
    25         count=count+1
    26 
    27         if count==amount:
    28             countine=input('任意键重新开始,“N”键退出游戏')
    29             if countine !='n':
    30                 count=0
    31             else:
    32                 exit()
    33     except:
    34         print('请输入数字,而不是其他')                
    猜数字--随机函数和屏蔽错误代码

    import random

      1 '''
      2 
      3 1.定义:
      4 
      5 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),
      6      本质就是.py结尾的python文件(文件名:test.py,对应的模块名test)
      7     
      8 包:用来从逻辑上组织模块的,本质就是一个目录(必须带有一个__init__.py 的文件)
      9 
     10 2.导入方法
     11 
     12 import module_name                              #快捷方式调用
     13 import module_name,module2_name                 #使用方法   module_name.m1()  
     14 
     15 from module_name  import *                      #完全复制,不建议使用,容易被覆盖
     16 from module_name  import m1,m2,m3               #使用方法    m1()
     17 
     18 from module_name import logger as logger_alex   #完全复制并且as改名
     19 
     20 3.import本质(路径搜索和搜索路径)
     21 
     22 导入模块的本质就是把python文件解释一遍
     23 (import test   test='test.py all code')
     24 (from test import name  name='code')
     25 #  import test1  #test1='test1.py 全部执行一遍'
     26 #  from.import test1  #当前目录路径下完全复制运行执行一遍
     27 
     28 导入包的本质就是执行该包下的__init__.py 的文件
     29 import module_name  ---> module_name.py ---->module_name.py的路径--->sys.path
     30 
     31 4.导入优化
     32 
     33 不重复搜索调用的方法
     34 from module_name  import m1                      #单个完全复制,使用方法  m1()
     35 from module_name import logger as logger_alex    #完全复制并且as改名
     36 
     37 5.模块的分类
     38 
     39 a:标准库
     40 b:开源模块(第三方模块)
     41 c:自定义模块
     42 
     43 '''
     44 
     45 print('-----------寻找当前环境目录路径--------')
     46 import sys,os
     47 a = os.path.abspath(__file__)
     48 b = os.path.dirname(os.path.abspath(__file__))
     49 c = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
     50 d = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
     51 
     52 print(a)
     53 print(b)
     54 print(c)
     55 print(d)
     56 
     57 
     58 print('--------创建新目录开始-----------')
     59 '''
     60 Python对文件的操作还算是方便的,只需要包含os模块进来,使用相关函数即可实现目录的创建。
     61 主要涉及到三个函数
     62 1、os.path.exists(path) 判断一个目录是否存在
     63 2、os.makedirs(path) 多层创建目录
     64 3、os.mkdir(path) 创建目录
     65 '''
     66 
     67 def mkdir(path):
     68     # 引入模块
     69     import os
     70  
     71     # 去除首位空格
     72     path=path.strip()
     73     # 去除尾部  符号
     74     path=path.rstrip("\")
     75  
     76     # 判断路径是否存在
     77     # 存在     True
     78     # 不存在   False
     79     isExists=os.path.exists(path)
     80  
     81     # 判断结果
     82     if not isExists:
     83         # 如果不存在则创建目录
     84         print(path+'创建成功')
     85         # 创建目录操作函数
     86         os.makedirs(path)
     87         return True
     88     else:
     89         # 如果目录存在则不创建,并提示目录已存在
     90         print (path+'目录已存在')
     91         return False
     92  
     93 # 定义要创建的目录
     94 m = '\foo'
     95 mkpath = c+m
     96 # 调用函数
     97 mkdir(mkpath)
     98 print('--------创建新目录完成-----------')
     99 
    100 
    101 print('--------创建  module_alex.py 开始-----------')
    102 data1="name='alex'
    "
    103 data2="def say_hello():
    "
    104 data3="	print ('hello alex')"
    105 
    106 sys.path.append(d)
    107 f = open (mkpath + '\module_alex.py','w+')
    108 f.write(data1)
    109 f.write(data2)
    110 f.write(data3)
    111 
    112 f.flush()
    113 f.close()
    114 print(f)
    115 print('--------创建 module_alex.py 完毕-----------')
    116 
    117 '''
    118 flush() 方法是用来刷新缓冲区的,即将缓冲区中的数据立刻写入文件,
    119 同时清空缓冲区,不需要是被动的等待输出缓冲区写入。
    120 一般情况下,文件关闭后会自动刷新缓冲区,但
    121 有时你需要在关闭前刷新它,这时就可以使用 flush() 方法。
    122 '''
    123 print('--------演示import 功能-----------')
    124 
    125 import sys,os
    126 print (sys.path)
    127 x=(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
    128 sys.path.append(x)
    129 
    130 
    131 print('--------演示调用模块-----------')
    132 
    133 import module_alex
    134 print(module_alex.name)
    135 module_alex.say_hello()
    136 
    137 
    138 
    139 
    140 '''
    141 创建和读取文件
    142 
    143 info = {
    144     'name':'alex',
    145     'age':22
    146         }
    147 
    148 f = open ('test.txt','w')
    149 f.write(str(info))
    150 
    151 f.close()
    152 
    153 
    154 
    155 f = open ('test.txt','r')
    156 
    157 data = eval(f.read())
    158 
    159 f.close()
    160 
    161 print (data['age'])
    162 
    163 '''
    import演示
      1 #自动生成代码
      2 
      3 print('-----------寻找当前环境目录路径--------')
      4 import sys,os
      5 a = os.path.abspath(__file__)
      6 b = os.path.dirname(os.path.abspath(__file__))
      7 c = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
      8 d = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
      9 
     10 print(a)
     11 print(b)
     12 print(c)
     13 print(d)
     14 
     15 
     16 print('--------创建新目录开始-----------')
     17 
     18 
     19 def mkdir(path):
     20     # 引入模块
     21     import os
     22  
     23     # 去除首位空格
     24     path=path.strip()
     25     # 去除尾部  符号
     26     path=path.rstrip("\")
     27  
     28     # 判断路径是否存在
     29     # 存在     True
     30     # 不存在   False
     31     isExists=os.path.exists(path)
     32  
     33     # 判断结果
     34     if not isExists:
     35         # 如果不存在则创建目录
     36         print(path+'创建成功')
     37         # 创建目录操作函数
     38         os.makedirs(path)
     39         return True
     40     else:
     41         # 如果目录存在则不创建,并提示目录已存在
     42         print (path+'目录已存在')
     43         return False
     44  
     45 # 定义要创建的目录
     46 m = '\'+input('目录名称:')
     47 mkpath = c+m
     48 # 调用函数
     49 mkdir(mkpath)
     50 print('--------创建新目录完成-----------')
     51 
     52 
     53 print('--------创建  module_alex.py 开始-----------')
     54 data1='''
     55 
     56 #socketserver基本使用
     57 import os
     58 import json
     59 
     60 import socketserver
     61 
     62 class MyTCPHandler(socketserver.BaseRequestHandler):
     63 
     64     def put(self,*args):
     65         #接收客户端文件
     66         cmd_dic = args[0]
     67         filename = cmd_dic['filename']
     68         filesize = cmd_dic['size']
     69         if os.path.isfile(filename):
     70             f = open(filename + '.new','wb')
     71         else:
     72             f = open(filename ,'wb')
     73 
     74         self.request.send(b'200 ok')#返回json格式
     75         received_size = 0
     76         while received_size < filesize:
     77             data = self.request.recv(1024)
     78             f.write(data)
     79             received_size += len(data)
     80         else:
     81             print ('file[%s] has uploaded...' % filename)
     82 
     83     
     84     def handle(self):
     85         while True:
     86             try:
     87                 self.data =self.request.recv(1024).strip()
     88                 print ('{} wrote:'.format(self.client_address[0]))
     89                 print (self.data)
     90 
     91                 cmd_dic = json.loads(self.data.decode())
     92                 action = cmd_dic['action']
     93 
     94                 if hasattr(self,action):
     95                     func = getattr(self,action)
     96                     func(cmd_dic)
     97 
     98                 #self.request.send(self.data.upper())
     99             except ConnectionResetError as e:
    100                 print ('err,e')
    101                 break
    102 
    103 
    104 
    105 
    106 if __name__ == '__main__':
    107     
    108     HOST,PORT = 'localhost',9999
    109     #HOST,PORT = '0.0.0.0',9999
    110     
    111     server = socketserver.TCPServer((HOST,PORT),MyTCPHandler)
    112     server.serve_forever()
    113 
    114 
    115 '''
    116 
    117 
    118 sys.path.append(d)
    119 ls = input('文件名称:')
    120 f = open (mkpath + '\'+ ls + '.py','w+',encoding='utf-8')
    121 f.write(data1)
    122 
    123 
    124 f.flush()
    125 f.close()
    126 print(f)
    127 print('--------创建 module_alex.py 完毕-----------')
    #自动生成代码
      1 #random模块  String(字符串)
      2 #随机模块
      3 
      4 #!/usr/bin/env python
      5 #_*_encoding: utf-8_*_
      6 import random
      7 print('#random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0')
      8 print (random.random())  #0.6445010863311293  
      9 
     10 print('用于生成一个指定范围内的整数。')
     11 print (random.randint(1,7)) #4
     12 #random.randint()的函数原型为:random.randint(a, b),
     13 #用于生成一个指定范围内的整数。
     14 # 其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b
     15 
     16 print('从指定范围内,按指定基数递增的集合中 获取一个随机数。')
     17 print (random.randrange(1,10)) #5  顾头不顾尾只不会1-9
     18 #random.randrange的函数原型为:random.randrange([start], stop[, step]),
     19 # 从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),
     20 # 结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。
     21 # random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。
     22 
     23 print('从序列中获取一个随机元素。')
     24 print(random.choice('liukuni')) #i  #从字符串,列表,元组,字典里随机取值
     25 #random.choice从序列中获取一个随机元素。
     26 # 其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。
     27 # 这里要说明一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。
     28 # list, tuple, 字符串都属于sequence。有关sequence可以查看python手册数据模型这一章。
     29 
     30 
     31 
     32 #random.sample的函数原型为:
     33 #random.sample(sequence, k),
     34 #从指定序列中随机获取指定长度的片断。
     35 #sample函数不会修改原有序列。
     36 
     37 
     38 print('-------#实际应用:------------')
     39 #!/usr/bin/env python
     40 # encoding: utf-8
     41 import random
     42 import string
     43 
     44 print('-------#随机整数:------------')
     45 print( random.randint(0,99))  #70
     46  
     47 print('-------#随机选取0到100间的偶数:------------')
     48 print(random.randrange(0, 101, 2)) #4
     49  
     50 print('-------#随机浮点数::------------')
     51 print( random.random()) #0.2746445568079129
     52 print(random.uniform(1, 10)) #9.887001463194844   #增加区间的功能
     53  
     54 print('-------#随机字符:------------')
     55 print(random.choice('abcdefg&#%^*f')) #f
     56 print(random.choice("学习Python"))#
     57 print(random.choice(["JGood","is","a","handsome","boy"]))  #List
     58 print(random.choice(("Tuple","List","Dict")))   #List
     59  
     60 print('-------#多个字符中选取特定数量的字符:------------')
     61 print(random.sample('abcdefghij',3)) #['f', 'h', 'd']
     62 print(random.sample([1,2,3,4,5],3))    #[1, 2, 5] #从前面,随机取(参数:3)位
     63  
     64 print('-------#随机选取字符串:------------')
     65 print( random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )) #apple
     66 
     67 print('-------#洗牌#:------------')
     68 items = [1,2,3,4,5,6,7]
     69 print(items) #[1, 2, 3, 4, 5, 6, 7]
     70 random.shuffle(items)  #shuffle() 方法将序列的所有元素随机排序
     71 print(items) #[1, 4, 7, 2, 5, 3, 6]
     72 
     73 
     74 print('-------生成随机验证码:------------')
     75 import random
     76 checkcode = ''  #定义全局变量
     77 for i in range(6):
     78     current = random.randrange(0,6) 
     79     if current != i:
     80         temp = chr(random.randint(65,90)) #chr()数字转换成ASCII,
     81     else:
     82         temp = random.randint(0,9)
     83     checkcode += str(temp)
     84 print (checkcode)
     85 
     86 
     87 
     88 #String(字符串)import string
     89 print('-------string类型介绍------------')
     90 import random
     91 import string
     92 a = string.__all__              #类型介绍
     93 b = string.ascii_letters        #大小写字母
     94 c = string.ascii_lowercase      #小写字母
     95 d = string.ascii_uppercase      #大写字母
     96 e = string.digits               #0-9
     97 f = string.hexdigits            #0-9,a-f,A-F
     98 g = string.octdigits            #0-7
     99 h = string.printable            #0-9,大小写字母,标点符号
    100 i = string.punctuation          #标点符号
    101 j = string.whitespace           #空格
    102 
    103 print(a)
    104 print('-------分割为了看的更清楚------------')
    105 print(b)
    106 print(c)
    107 print(d)
    108 print(e)
    109 print(f)
    110 print(g)
    111 print(h)
    112 print('-------分割为了看的更清楚------------')
    113 print(i)
    114 print('-------分割为了看的更清楚------------')
    115 print(j)
    116 
    117 
    118 
    119 print('-------随机函数测试string------------')
    120 x = random.choice(f)
    121 y = random.sample(f,5)
    122 print('-------用随机选取字符串测试string------------')
    123 print(x)
    124 print('-------用多个字符中选取特定数量的字符测试string------------')
    125 print(y)
    #random模块 String(字符串)
     1 #  import os
     2 #  help(os)
     3 # print(os)模块
     4 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
     5 os.chdir("dirname")  改变当前脚本工作目录;相当于shell下cd
     6 os.curdir  返回当前目录: ('.')
     7 os.pardir  获取当前目录的父目录字符串名:('..')
     8 os.makedirs('dirname1/dirname2')    可生成多层递归目录
     9 os.removedirs('dirname1')    若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
    10 os.mkdir('dirname')    生成单级目录;相当于shell中mkdir dirname
    11 os.rmdir('dirname')    删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
    12 os.listdir('dirname')    列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
    13 os.remove()  删除一个文件
    14 os.rename("oldname","newname")  重命名文件/目录
    15 os.stat('path/filename')  获取文件/目录信息
    16 #重要
    17 os.sep    输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
    18 os.linesep    输出当前平台使用的行终止符,win下为"
    ",Linux下为"
    "
    19 os.pathsep    输出用于分割文件路径的字符串
    20 os.name    输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
    21 os.system("bash command")  运行shell命令,直接显示
    22 os.environ  获取系统环境变量   字典模式{k:v}
    23 #重要
    24 #  (path)路径  (r'c:acda.txt')
    25 os.path.abspath(path)  返回path规范化的绝对路径
    26 os.path.split(path)  将path分割成目录和文件名二元组返回(r'c:acda.txt')
    27 os.path.dirname(path)  返回path的目录。其实就是os.path.split(path)的第一个元素
    28 os.path.basename(path)  返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
    29 os.path.exists(path)  如果path存在,返回True;如果path不存在,返回False
    30 os.path.isabs(path)  如果path是绝对路径,返回True(r'c:a')
    31 os.path.isfile(path)  如果path是一个存在的文件,返回True。否则返回False
    32 os.path.isdir(path)  如果path是一个存在的目录,则返回True。否则返回False
    33 os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
    34 import os
    35 x = os.path.join(r'c:',r'a',r'a.txt')
    36 print (x)
    37 os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间
    38 os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间
    39 
    40 #  sys模块
    41 sys.argv           命令行参数List,第一个元素是程序本身路径
    42 ['C:/Users/Administrator/AppData/Local/Programs/Python/Python36-32/212.py']
    43 sys.exit(n)        退出程序,正常退出时exit(0)
    44 sys.version        获取Python解释程序的版本信息
    45 sys.maxint         最大的Int值
    46 sys.path           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
    47 sys.platform       返回操作系统平台名称
    48 sys.stdout.write('please:')
    49 val = sys.stdin.readline()[:-1]
    (os)模块sys模块

      try:

      except:

      

     1 #异常处理
     2 try:
     3     #name[3]
     4     #data['name']
     5     #open('r')
     6     a = 1
     7     print (a)
     8 except KeyError as e :
     9     print ('没有这个KEY',e)
    10 
    11 except IndexError as e :
    12     print ('列表操作错误',e)
    13 
    14     
    15 except (KeyError,IndexError) as e :
    16     print ('多个错误统一处理',e)
    17 
    18 
    19 except Exception as e :
    20     print ('所有的错误都处理,未知错误使用',e)
    21 
    22 
    23 else:
    24     print ('一切正常打印这个')
    25 
    26 finally:
    27     print ('不管有没有错误,都执行')
    #异常处理except
     1 #1、异常基础
     2 #在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,
     3 #   而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!!
     4 
     5 try:
     6     pass
     7 except Exception as ex:
     8     pass
     9 
    10 
    11 print('需求:将用户输入的两个数字相加,输入字母或者其他报错')
    12 while True:
    13     num1 = input('num1:')
    14     num2 = input('num2:')
    15     try:
    16         num1 = int(num1)
    17         num2 = int(num2)
    18         result = num1 + num2
    19     except Exception as e:
    20         print('出现异常,信息如下:')
    21         print(e)
    异常基础 
      1 '''
      2 2、异常种类
      3 
      4 常用异常
      5 
      6 AttributeError      试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x
      7 IOError             输入/输出异常;基本上是无法打开文件
      8 ImportError         无法引入模块或包;基本上是路径问题或名称错误
      9 IndentationError    语法错误(的子类) ;代码没有正确对齐
     10 IndexError          下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
     11 KeyError            试图访问字典里不存在的键
     12 KeyboardInterrupt   Ctrl+C被按下
     13 NameError           使用一个还未被赋予对象的变量
     14 SyntaxError Python  代码非法,代码不能编译(个人认为这是语法错误,写错了)
     15 TypeError           传入对象类型与要求的不符合
     16 UnboundLocalError   试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,
     17                     导致你以为正在访问它
     18 ValueError          传入一个调用者不期望的值,即使值的类型是正确的
     19 
     20 常用异常
     21 '''
     22 
     23 print('----以下实例,异常类只能用来处理指定的异常情况,如果非指定异常则无法处理。----')
     24 dic = ["wupeiqi", 'alex']
     25 try:
     26     dic[10]
     27 except IndexError as e:
     28     print (e)
     29 
     30 
     31 dic = {'k1':'v1'}
     32 try:
     33     dic['k20']
     34 except KeyError as e:
     35     print (e)
     36 
     37 
     38 s1 = 'hello111111111111111'
     39 try:
     40     int(s1)
     41 except ValueError as e:
     42     print (e)
     43 
     44 
     45 print('-----未捕获到异常,程序直接报错---不演示了,自己测试吧-----')
     46 
     47 '''
     48 s1 = 'hello222222222222'
     49 try:
     50     int(s1)
     51 except IndexError as e:
     52     print (e)
     53 '''
     54 
     55 print('-----所以,写程序时需要考虑到try代码块中可能出现的任意异常,可以这样写:')
     56 
     57 s1 = 'hello33333333333333'
     58 try:
     59     int(s1)
     60 except IndexError as e:
     61     print (e)
     62 except KeyError as e:
     63     print (e)
     64 except ValueError as e:
     65     print (e)
     66 
     67     
     68 print('-----万能异常 在python的异常中,有一个万能异常:Exception,他可以捕获任意异常,即:')
     69 
     70 s1 = 'hello4444444444444444'
     71 try:
     72     int(s1)
     73 except Exception as e:
     74     print (e)
     75 
     76 print('----接下来你可能要问了,既然有这个万能异常,其他异常是不是就可以忽略了!----')
     77 print('----答:当然不是,对于特殊处理或提醒的异常需要先定义,最后定义Exception来确保程序正常运行。----')
     78 
     79 s1 = 'hello5555555555555555'
     80 try:
     81     int(s1)
     82 except KeyError as e:
     83     print( '键错误')
     84 except IndexError as e:
     85     print ('索引错误')
     86 except Exception as e:
     87     print ('错误')
     88 
     89 
     90 
     91 print('--------异常其他结构--------')
     92 try:
     93     #name[3]
     94     #data['name']
     95     #open('r')
     96     a = 1
     97     print (a)
     98 except KeyError as e :
     99     print ('没有这个KEY',e)
    100 
    101 except IndexError as e :
    102     print ('列表操作错误',e)
    103 
    104     
    105 except (KeyError,IndexError) as e :
    106     print ('多个错误统一处理',e)
    107 
    108 
    109 except Exception as e :
    110     print ('所有的错误都处理,未知错误使用',e)
    111 
    112 
    113 else:
    114     print ('一切正常打印这个')
    115 
    116 finally:
    117     print ('不管有没有错误,都执行')
    118 
    119 
    120 print('------------------主动触发异常---------------')
    121 try:
    122     raise Exception('错误了。。。')
    123 except Exception as e:
    124     print (e)
    125 
    126 
    127 print('------------------主动触发异常222222222222222222---------------')
    128 s1 = 'hello'
    129 try:
    130     int(s1)
    131 except ValueError as e:
    132     print(e)
    133 
    134 
    135 
    136 print('---------自定义异常--------')
    137 class AlexException(Exception):
    138     def __init__(self,msg):
    139         self.message = msg
    140     #def __str__(self):
    141     #    return '替换了,自定义的异常'
    142     
    143 try:
    144     raise AlexException('自定义的异常,数据库连不上,我自己定义的异常')
    145 except AlexException as e:
    146     print(e)
    147 
    148 
    149 
    150 print('---------------断言------# assert 条件--------')
    151 
    152 assert 1 == 1   # 条件成立,则继续执行下面的代码
    153 
    154 print('''
    155 1、assert语句用来声明某个条件是真的。
    156 2、如果你非常确信某个你使用的列表中至少有一个元素,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。
    157 3、当assert语句失败的时候,会引发一AssertionError。
    158       ''')
    159 assert 1 == 2  #  条件不成立,则报错
    常用异常和实例
     1 ArithmeticError
     2 AssertionError
     3 AttributeError
     4 BaseException
     5 BufferError
     6 BytesWarning
     7 DeprecationWarning
     8 EnvironmentError
     9 EOFError
    10 Exception
    11 FloatingPointError
    12 FutureWarning
    13 GeneratorExit
    14 ImportError
    15 ImportWarning
    16 IndentationError
    17 IndexError
    18 IOError
    19 KeyboardInterrupt
    20 KeyError
    21 LookupError
    22 MemoryError
    23 NameError
    24 NotImplementedError
    25 OSError
    26 OverflowError
    27 PendingDeprecationWarning
    28 ReferenceError
    29 RuntimeError
    30 RuntimeWarning
    31 StandardError
    32 StopIteration
    33 SyntaxError
    34 SyntaxWarning
    35 SystemError
    36 SystemExit
    37 TabError
    38 TypeError
    39 UnboundLocalError
    40 UnicodeDecodeError
    41 UnicodeEncodeError
    42 UnicodeError
    43 UnicodeTranslateError
    44 UnicodeWarning
    45 UserWarning
    46 ValueError
    47 Warning
    48 ZeroDivisionError
    49 
    50 更多异常
    更多异常--来个会翻译联系我

     exit()

     1 Python里   os._exit() sys.exit() exit()    的区别
     2 
     3 Python退出程序的方式有两种:os._exit(), sys.exit()
     4 1)os._exit()   直接退出 Python程序,其后的代码也不会继续执行。
     5 
     6 2)sys.exit()   引发一个 SystemExit异常,若没有捕获这个异常,Python解释器会直接退出;
     7                 捕获这个异常可以做一些额外的清理工作。
     8                 0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获。
     9               
    10 3) exit()       跟 C 语言等其他语言的 exit() 应该是一样的。
    11    os._exit()   调用 C 语言的 _exit() 函数。
    12 
    13 
    14    os._exit()   用于在线程中退出
    15    sys.exit()   用于在主线程中退出。
    exit()
  • 相关阅读:
    4-8(四)badboy 脚本录制工具的安装
    4-8(三)Jmeter 工具的基本使用
    4-8(二)jmete 主要文件目录及简单了解 http 协议
    4-8(一)jmeter 基础概念、什么时候做性能测试、性能测试的前提、性能测试主要指标、开展性能测试必备条件
    jmeter 介绍及 windows/Linux下安装
    如何测试(四)朋友圈如何测试?
    如何测试(二)聊天功能如何测试?
    如何测试(一)优惠券如何测试?
    如何测试(三)购物车如何测试?
    自动化面试题三(41 ~ 73)
  • 原文地址:https://www.cnblogs.com/ujq3/p/7249629.html
Copyright © 2020-2023  润新知