程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python編程進階——時間日期模塊與異常處理函數

編輯:Python

目錄

  • 1.異常處理
    • 1.1捕獲異常
    • 1.2自定義異常,拋出異常
  • 2.時間和日期 打印日志 生成測試報告 訂單


1.異常處理

# 概念:
# 程序在運行時,如果程序遇到一個錯誤,程序就會自動停止的行為,拋出錯誤信息的就叫異常

1.1捕獲異常

# 保障程序的健壯性和穩定性
# 健壯性: 健康 小問題 自己處理掉
# 穩定性: 讓程序穩定運行
''' try: 要執行的代碼 except: 出現的錯誤 要執行的代碼 其他代碼 '''
# try裡面放你不確定的代碼
# except 如果出現了錯誤就執行except的代碼
# 輸入整數
# num = int(input("請輸入整數"))
# print(num)
# num1=3+5
# print(num1)
try:
num = int(input('請輸入整數:'))
print(num)
except:
print('請輸入正確的數字')
num1=3+5
print(num1)
# 處理 分報錯提示
''' try: 要執行的代碼 except 錯誤類型: 出現錯誤的處理 except 錯誤類型: 出現錯誤的處理 '''
# 輸出一個數字對於另外一個數字進行整除
num = float(input("請輸入數字:"))
result = 2 / num
print(num)
# ZeroDivisionError: float division by zero
# ValueError: could not convert string to float: 'a'
try:
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
except ZeroDivisionError:
print('請不要輸入0,0不能被除')
except ValueError:
print('請輸入正確的數字')
''' try: 要執行的代碼 except (錯誤類型1,錯誤類型2) 出現錯誤的處理 '''
try:
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
except (ZeroDivisionError,ValueError) as e:
print('請輸入正確的數字%s'%e)
# 面試題
# 文件 ioError
# FileNotFoundError
# ValueError
# IndexError
# TypeError 類型錯誤
#想不到那麼多異常 大概預測 碰到了別的問題 怎麼辦? 報錯
# exception 異常的父類 BaseException
# ZeroDivisionError,ValueError exception拿到了所有的異常 都可以去處理
# exception接受所有異常並且處理
# as e異常信息保存在 e裡面 as 取名
# 為什麼會錯誤 e捕獲到錯誤
# e獲取異常信息
try:
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
except (ZeroDivisionError,ValueError) as e:
print('請輸入正確的數字%s'%e)
except Exception as e:
print('請輸入正確的數字%s'%e)
''' try: 要嘗試的代碼 except 錯誤類型: 捕獲錯誤類型 except 錯誤類型: 捕獲錯誤類型 except Exception as e: print(e) else: 沒有異常才會執行的代碼 finally: 無論如何都會執行 '''
try:
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
except ZeroDivisionError as e:
print('不能被0整除%s'%e)
except ValueError as e:
print('值錯誤%s'%e)
except Exception as e:
print('所有錯誤%s'%e)
else:
print('正常執行')
finally:
print('無論有沒有異常都執行')
def demo1():
try:
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
except Exception as e:
print('請輸入正確的數字%s' % e)
print(demo1())
def demo1():
num = float(input('請輸入數字:'))
result = 2 / num
print(result)
try:
print(demo1())
except Exception as e:
print(e)
# 做自動化可以在函數內部捕獲異常,也可以在調用函數的時候捕獲異常
# 調用函數捕獲異常 代碼干淨點
# base
def open():
try:
driver.get()
except Exception as e:
print(e)
# pom
def login():
try:
driver.on_input()
driver.on_input()
driver.on_click()
except Exception as e:
print(e)

1.2自定義異常,拋出異常

# 異常處理可以拋出去
# 特定的要求就會用自定義異常
# 輸入密碼
# 密碼長度<8,拋出異常
# 密碼>=8,返回密碼的長度
def input_password():
try:
pwd = input('請輸入密碼')
if len(pwd)<8:
# print('密碼小於8')
raise Exception(len(pwd),8)
except Exception as e:
print('密碼長度不夠%s'%e)
else:
print('密碼輸入完成')
return pwd
pwd=input_password()
print(pwd)

2.時間和日期 打印日志 生成測試報告 訂單

# 生成日歷 年歷月歷和日歷
import calendar
# 輸出3月的日歷
cal = calendar.month(2022,3)
print(cal)
# 22年的年歷
year = calendar.calendar(2022)
print(year)
# 時間戳: 1970年1月1日0點0分0秒 - 現在時間秒數
import time
print('當前時間戳:',time.time())
# 時間元組 元組(年月日時分秒 一周的第幾日 0-6 0是星期一 一年的第幾天 夏令時)
t = (2022,3,13,22,19,21,6,1)
print(t)
# 時間戳轉為時間元組
print('時間戳轉為時間元組:',time.localtime(time.time()))
# 時間元組轉為日期 time.asctime
print('英文的日期',time.asctime(time.localtime(time.time())))
# 日期格式 百度 %Y %m %d 這個用的多點
print(time.strftime('%Y-%m-%d %H:%M:%S'))

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved