异常处理
即处理异常(报错 ,Error)
提前预防
如果错误发生的条件是可预知的,我们需要用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
之后预防
如果错误发生的条件是不可预知的,则需要用到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
两数之和
更换解释器 , 更换背景色
分析题目 (需求)
20-40分钟,如果真想不出来 --》 不要死磕 --》 去评论区看他人装逼(解决思路) ---你目前想不出来是因为你第一次接触,10-15题之后不能再看答案。可以死磕
用纸笔画
字符串内置方法
内置方法:自带的方法(提前安排好的,会用就行了)
字符串的内置方法:只有字符串才能使用,列表不能用
索引取值
print(s[0])
切片
print(s[0:4])
成员运算
print('nick' in s) print('nick1' in s)
for循环
s = 'nick handsome'for i in s: # n i c k h a print(i)
len()
接下来讲的都是字符串.出来的方法print(len(s))
strip(): 默认去掉两端空格,可以
s = '**** ni ck ' print(s) print(s.strip()) # 去空格 print(s.strip('*')) # 去* print(s.strip('n* ')) # 去 和*和n
lstrip()/rstrip(): 左端/右端
s = '**nick**' print(s.lstrip('*')) print(s.rstrip('*'))
startswith()/endswith(): 以。。开头/以。。结尾
s = 'nick' print(s.startswith('nick')) print(s.endswith('k'))
find()/index() : 获取某一个元素的索引位置
s = 'nick' print(s.find('a')) # 找不到返回-1 # print(s.index('a')) # 找不到报错
join() : 把列表内的元素拼接出来
print('*'.join(['a', 'b', 'c']))
split(): 切割
s = 'a*b*c' print(s.split('*')) # 以*为切割符号,切割字符串
center/ljust/rjust : 打印更美观,居中/居左/居右
print(s.center(50, '-')) print(s.ljust(50, '-')) print(s.rjust(50, '-'))
isdigit()/isalpha()
s = 'a' print(s.isdigit()) # 是否为纯数字 print(s.isalpha()) # 是否为纯字母
count(): 计数
s = 'nick nick' print(s.count('nick'))
ctrl+alt+l --> 让他符合pep8标准(python创始人规定了代码的风格)
顿悟 --》 老司机
selenium基本使用
什么是selenium?
是一个自动化测试工具。为什么要使用selenium?
优点:通过它可以驱动浏览器,跳过登录滑动验证
缺点:爬虫效率低
怎么使用selenium?
安装请求库:pip install selenium
html标签查找:
- 通过属性查找
- 优先使用(主要用前两个)(有id先找id,没有id,再找class)
- id:值是唯一的
- class:值可以有多个
- name:值得input里面拥有的唯一属性
- element:查找第一个
elements:查找所有