预科班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. 20-40分钟,如果真想不出来 --》 不要死磕 --》 去评论区看他人装逼(解决思路) ---你目前想不出来是因为你第一次接触,10-15题之后不能再看答案。可以死磕

  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'))

ctrl+alt+l --> 让他符合pep8标准(python创始人规定了代码的风格)

顿悟 --》 老司机

selenium基本使用

  1. 什么是selenium?
    是一个自动化测试工具。

  2. 为什么要使用selenium?

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

    缺点:爬虫效率低

  3. 怎么使用selenium?

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

  • 安装请求库:pip install selenium

  • html标签查找:

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

转载于:https://www.cnblogs.com/bowendown/p/11431394.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值