程序的流程控制

1|0day07(数据结构)

1|11. if 判断——分为三个分支结构

按照从上往下运行

1|0(1)单分支结构

if 条件: 代码块

1|0(2)双分支结构

if 条件: 代码块 条件1成立执行这里 else 代码块 条件1不成立执行这里

1|0(3)三分之一结构

在没有else结尾的 if elif elif。。。elif中,等同于if if if 。。。 if

if 条件1 代码块 条件1成立执行这里 elif 条件2 代码块 条件1不成立且条件2成立,执行这里 elif 条件3 代码块 条件12都不成立,条件3成立,执行这里 。。。 else: 代码块 以上条件都不成立,执行这里

1|22. for循环结构

1|0(1)for + break

中断本层循环,继续下一层循环

1|0(2) for +continue

中断本次循环,不执行下面的代码(continue不应该放在最后一行,continue一般放在中间)

for i in range(1,13): for j in range(1,32): if i==2 and j==28: break elif (i in[4,6,9,11])and j==31:#elif continue print(f'{i}{j}日') #部分结果为: ... 225 226 227 31 428 429 430 51 52 ...

1|33. 异常处理(就是处理异常,报错Error)

1|0(1)捕捉错误

  • try 方法(尝试)
1. try: print(1/0) #0不能做分母,这里会报错,但会跳过,继续执行后面的代码 2. try: print(1/0) except Exception #Exception 为万能异常,错误被捕捉了,继续执行后面的代码 pass #pass表示什么也不做 3. try: key = input('输入一个key获取字典中的值') dic = {'a': 1} dic[key] # ,输入一个错误值,如'b',而列表里没有'b',这是KeyError except Exception as e: # Exception万能异常 # as e,是把错误信息输入出来,同时一般把该错误记录到日志中 # logging.info(e) -> 日志是给程序员看 print('你输入有问题') # -》 给用户看 # 预运行(类似把代码抽离到另外一个文件中运行,这样的运行对本文件不会造成任何影响),能不用则不用

1|44.常用字符串内置方法

内置方法:即自带的方法(会用就行)

字符串内置方法只有字符串才能使用

如字符串 :

s = 'nick handsome'

1|0(1)索引取值

print(s[0]) #结果是 n

1|0(2)切片

print(s[0:6:2]) #结果:nc

1|0(3)成员运算

print('nick' in s) #结果: True print('nick1' in s) #结果:False

1|0(4)for循环

for i in s: # n i c k h a print(i) #结果:nick handsome #每输出一个字母都要换行,这里就为了方便,写成这样

1|0(5)len()字符串长度

print(len(s)) #结果:13

1|0(6)replace()替换值

s = 'tank sb' s = s.replace('sb', 'dsb') # 替换 print(s) #结果:tank dsb

下面的方法都是字符串 .(点)出来的方法

1|0(7)strip() :默认去掉字符串两端的空格

1|0(8)lstrip()/rstrip() :去掉字符串的左端/右端

1|0(9)startwith()/endwith() :以...开头/以...结尾

1|0(10)find()/index() :获取某一元素的索引位置

1|0(11)join() :把列表内的元素拼接出来,生成字符串

1|0(12)split() :把字符串切割,生成列表

1|0(13)center()/ljust()/rjust():打印更美观,居中/居左/居右

1|0(14)isdigit()/isalpha() :是否为纯数字/是否为纯字母

1|0(15)count() 计数

# 接下来讲的都是字符串.出来的方法 s = '**** ni ck ' print(s) # 6. strip(): 默认去掉两端空格,可以 # 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('ni')) 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')) #打印结果: **** ni ck i ck nick** **nick True True -1 a*b*c ['a', 'b', 'c'] ----------------------a*b*c----------------------- a*b*c--------------------------------------------- ---------------------------------------------a*b*c False True 2

1|0split() join()和jieba模块的比较

把字符串按词语切割为列表

# 2. 使用jieba模块对文件内容切割 jieba.add_word('回家的诱惑') # 让"回家的诱惑"成为一个单词 jieba.del_word('女士') #删除全部 "女士" 字符串 jieba.del_word('先生') jieba.del_word('小马') data_list = jieba.lcut(data) #把字符串按词语切割为列表, data = ' '.join(data_list) #用空格把列表拼接成字符串

__EOF__

本文作者BigSun丶
本文链接https://www.cnblogs.com/Mcoming/p/11431443.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   BigSun丶  阅读(133)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示