day07

异常处理(Error)

1、提前预防

如果错误发生的条件是可预知的,我们需要用if进行处理

AGE = 10
while True:   # 规定下面的if为true时,条件满足
        age = input('>>:').strip() 
        if age.isdigit():   # 只有在age为字符串形式的整数时,下列代码才不会出错,该条件是可预知的 
                age = int(age)
                if age == AGE:
                        print('you got it')
                        break

2、之后预防

如果错误发生的条件是不可预知的,这需要用到try...except

'''
try:     
    代码块
except # 异常类型:     
    执行条件:try中一旦检测到异常,就执行这个位置的逻辑
'''

'''
try:  # 尝试
     print(1 / 1)  # 有错误就跳过,没有错误就执行
except ZeroDivisionError:  # 错误被跳过了(捕捉了)
     pass  # 啥也不做
'''

try:
    key = input('输入一个key获取字典中的值')
    dic = {'a': 1}
    q = dic[key]  # KeyError
    print(q)
except Exception as e: # Exception万能异常 # 把错误信息输入出来,同时一般把该错误记录到日志中
    #logging.info(e)  -> 程序员看(记录日志)
    print('你输入有问题') #   -》 用户看

leetcode

两数之和

1、更换解释器,更换背景色

2、分析题目(需求)

3、实在想不出看评论区(解题思路),多做就好了

4、需要问题用纸笔画

字符串内置方法

内置方法:即自带的方法

只有字符串才能只用,聊表不能用

1、索引取值

print(s[0])

2、切片

print(s[0:4])

3、成员运算

print('nick' in s)
print('nick1' in s)

4、for循环

s = 'nick handsome'
for i in s:  # n i c k  h a
    print(i)

5、len()

print(len(s))

6、strip()默认去掉两端空格

s = '****  ni  ck  '
print(s)

print(s.strip())  # 去空格
print(s.strip('*'))  # 去*
print(s.strip('n* '))  # 去 和*和n

7.lstrip()/rstrip(): 左端/右端

s = '**nick**'
print(s.lstrip('*'))
print(s.rstrip('*'))

8.startswith()/endswith(): 以...开头/以...结尾

s = 'nick'
print(s.startswith('nick'))
print(s.endswith('k'))

9.find()/index() : 获取某一个元素的索引位置

s = 'nick'
print(s.find('a'))  # 找不到返回-1
# print(s.index('a'))  # 找不到报错

10.join() : 把列表内的元素拼接出来

print('*'.join(['a', 'b', 'c']))

11.split(): 切割

s = 'a*b*c'
print(s.split('*'))  # 以*为切割符号,切割字符串

12.center/ljust/rjust : 打印更美观,居中/居左/居右

print(s.center(50, '-'))
print(s.ljust(50, '-'))
print(s.rjust(50, '-'))

13.isdigit()/isalpha()

s = 'a'
print(s.isdigit())  # 是否为纯数字
print(s.isalpha())  # 是否为纯字母

14.count(): 计数

s = 'nick nick'
print(s.count('nick'))

selenium基本使用

什么是selenium?

是一个自动化测试工具。

为什么要使用selenium?

优点:通过它可以驱动浏览器,跳过登录滑动验证

缺点:爬虫效率低

怎么使用selenium?

  • 安装驱动:http://npm.taobao.org/mirrors/chromedriver/2.38/

  • 安装请求库:pip install selenium

  • html标签查找:

    • 通过属性查找
    • 优先使用(主要用前两个)
      • id:值是唯一的
      • class:值可以有多个
      • name:值得input里面拥有的唯一属性
  • element:查找第一个

  • elements:查找所有

posted @ 2019-08-29 21:04  Isayama  阅读(93)  评论(0编辑  收藏  举报