博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python入门_老男孩_数据类型简介_int/bool/str转换_字符串索引和切片_字符串操作_day3...
阅读量:5116 次
发布时间:2019-06-13

本文共 4877 字,大约阅读时间需要 16 分钟。

关键词

  •   数据类型
  •   int, bool, str之间的相互转换
  •   字符串的索引与切片
  •   字符串的操作

 

 

数据类型

  int  1 2 3 用于计算

  bool  True  False  用户判断

  str  'haojile'  存储少量数据  进行操作  

  list  ['xiaoming', 123]  存储大量数据

  元祖  ('haojile', 1, 23)

  dict  {'name':'xiaoming', 'age':16, 'sex':'nan'}

  集合  {1, 2, 3, 'asdf’}

 

int, str, bool之间的相互转化

# int >> stri = 1s = str(i)# str >> inti = int(str)# int >> bool # 只要是0, False,其他为Trueb = bool(i)print(b)# 后者效率高while True:    passwhile 1:    pass# str >> bool# 非空字符串都是Truesif s:    print('你输入的为空,请重新输入')else:    pass

 

字符串的索引和切片

# 字符串的索引与切片s = 'hello,world'# 索引print(s[0])print(s[2])print(s[-1])print(s[-2])#切片 print(s[0:5])       #helloprint(s[:])    print(s[0:0])print(s[0:5:2]    #[start,end,step]print(s[4:0:-1]) # olleprint(s[4::-1]) # ollehprint(s[4::-2]) # olhprint(s[-1::-1]) # dlrow,ollehprint(s[::-1])

 

字符串的操作

1 # 字符串的操作  2 s = 'forDIGNITY'  3   4 s1 = s.capitalize()    # 首字母大写  5 s2 = s.upper()    # 全部大写  6 s3 = s.lower()    # 全部小写  7 print(s1, s2, s3)  8   9 # 验证码是否正确,不区分大小写, 三次机会 10 # verifyCode = 'ABcd' 11 # i = 0 12 # while i < 3: 13 #     temp =  input('请输入验证码: ') 14 #     if temp.upper() == verifyCode.upper(): 15 #         print('输出正确') 16 #     else: 17 #         print('请重新输入') 18 #     i += 1 19  20 # 大小写翻转 21 s4 = s.swapcase() 22 print(s4) 23  24 # 每个隔开(特殊字符或者数字)的单词字母大写 25 s = 'hello world3i am%larry' 26 s5 = s.title() 27  28 # 居中, 空白填充 29 s = 'guess' 30 s6 = s.center(8) 31 s7 = s.center(20, '#') 32  33 # \t = 8 - 之前字符 34 s = 'gue\tss'    35 s8 = s.expandtabs() 36  37 # 计算长度,汉字算作一 38 s = 'hello小明' 39 s9 = len(s) 40 print(s4, s5, s6, s7, s8, s9) 41  42 # 是否以特定字母开头或结尾 43 s = 'freedom the best' 44 s10 = s.startswith('free') 45  46 if s10: 47     pass 48  49 s11 = s.startswith('d', 4,6) 50 print(s10, s11) 51  52 # find通过元素找索引,找不到返回-1 53 # index通过元素着索引,找不到报错 54 s12 = s.find('e') 55 s13 = s.index('e') 56 print(s12, type(s13)) 57  58 # strip默认删除前后空格 59 # 指定字符,从前后删除,删完即停 60 s = '   &love&story%    ' 61 s14 = s.strip() 62 s15 = s14.strip('&%') 63 print(s12, s13, s14, s15) 64  65 # strip情景案例 66 # 有时候会习惯性键入空格,导致出错,strip贴心守护 67 username = input('请输入名字:').strip() 68 if username == 'xiaoming': 69     print('you got it!') 70  71 # 删除左边空格 72 s17 = s.lstrip() 73  74 # 删除右边空格 75 s18 = s.rstrip() 76  77 # 计算元素或者切片出现的次数 78 s = 'nothing is perferct' 79 s19 = s.count('no') 80 s20 = s.count('e') 81 print(s19, s20) 82  83 # str -- list 84 s = ';harry;potter;glory' 85 s21 = s.split(';') 86 print(s21) 87  88 # format的三种方法,格式化输出 89 s = '我是{},年龄{},性别{}, 再说一次我叫{}'.format('xiaoming', 18, 'nan', 'xiaoming') 90 print(s) 91  92 s = '我是{0},年龄{1},性别{2},再说一次我叫{3}'.format('xiaoming', 18, 'nan') 93 print(s) 94  95 s = '我是{name},年龄{age},性别{sex}, 再说一次我叫{name}'.format(name ='xiaoming', sex='nan', age=18) 96 print(s) 97  98 # 替换 99 s = '哦啊哥好饿好皇宫护卫哦佛好饿好我'100 s22 = s.replace('好饿','明显')101 s23 = s.replace('好饿','明显', 1)102 print(s22, s23)103 104 # for105 s = 'haojile'106 for i in s:107     print(i)108 109 # 敏感词汇查找110 s = 'fs苍井空hhaha'111 if '苍井空' in s:112     print('您的评论里有敏感词汇..')

 

习题

字符串的切片

# 字符串的切片s = '132a4b5c'# 132print(s[0:3])# a4bprint(s[3:6])# 1245print(s[0:7:2])# 3abprint(s[1:6:2])# cprint(s[-1])# ba3print(s[5:0:-2])
View Code

 

字符串的操作

# 在变量name = "  aleX laNb " 完成如下操作name = "  aleX laNb "# 移除name变量中的空格,并输出处理结果n1 = name.strip()print(n1)# 移除n1中的al,并输出n2 = n1[2:]print(n2)# 移除n1中的Nb,并输出n3 = n1[:-2]print(n3)# 移除n1开头的a和结尾的b,并输入n4 = n1[1:-1]print(n4)# 判断n1是否是以al开头n5 = n1.startswith('al')print(n5)# 判断n1是否以Nb结尾n6 = n1.endswith('Nb')print(n6)# 将n1中所有的l都替换成p,并输出n7 = n1.replace('l', 'p')print(n7)# 将n1中的第一个l替换成p,并输出n8 = n1.replace('l', 'p', 1)print(n8)# 将n1中的值根据所有的l分割,并输出n9 = n1.split('l')print(n9)# 将n1中的值根据第一个l分割,并输出n10 = n1.split('l', 1)print(n10)# 将n1中对应的值大写,并输出n11 = n1.upper()print(n11)# 将n1中对应的值小写,并输出n12 = n1.lower()print(n12)# 将n1中对应的值首字母a大写,并输出n13 = n1.title()print(n13)# 判断n1中对应字幕l出现几次,并输出n14 = n1.count('l')print(n14)# 如果判断n1中前四位l出现几次,并输出n15 = n1.count('l', 4)print(n15)# 找到N对应的索引,如果找不到则报错,并输出n16 = n1.index('N')print(n16)# 找到x对应的索引,如果找不到则返回-1,并输出n17 = n1.find('x')print(n17)# 找到X le对应的索引,并输出结果n18 = n1.find('X la')print(n18)# 反转n19 = n1.reverse()print(n19) # 大小写反转n20 = n1.swapcase()print(n20)
View Code

 

for & while 遍历字符串中的元素

# 使用while和for循环分别打印字符串s='asdfer'中的每个元素s = 'asdfer'# forfor i in s:    print(i)# whilei = 0while i < len(s):    temp = s[i]    print(temp)    i += 1
View Code

 

加法计算器

# 实现一个加法计算器# 如:content = input('请输入内容: ')# 如用户输入: 5+9  5+ 9  5 + 9# 先进行分割在加和计算content = input('>>>').strip().split('+')sum = 0for i in content:    sum += int(i)print(sum)
View Code

 

求出字符串中整数的个数

# 计算用户输入的内容有几个整数# 如:content = input('请输入内容: ') # 如 fsssae3fh890j = 0content = input('请输入内容: ').strip()for i in content:    if i.isdigit():        j += 1 print(j)# whilek = 0count = 0content = input('请输入内容: ').strip()while k < len(content):    if content[k].isdigit():        count += 1    k += 1print(count)
View Code

 

转载于:https://www.cnblogs.com/dignity/p/9733431.html

你可能感兴趣的文章
PowerPivot excel 2010 for sql
查看>>
Eclipse常用设置
查看>>
上传文件 tmp_name 为空
查看>>
css 样式 文字过长 换行处理方法
查看>>
PHP IDE phpstorm 常用快捷键
查看>>
iOS:触摸控件UITouch、事件类UIEvent
查看>>
ThinkPad T430 安装Win7 64Bit
查看>>
WPF1: Set and Get value for a control in a form which run in another thread
查看>>
获取 WORD 表格内容
查看>>
mysql 安装失败解决方法
查看>>
大流量高并发量网站的之解决方案
查看>>
ActionSheet & alertView
查看>>
JVM深入理解——总结1
查看>>
codefores 998 E. Sky Full of Stars(容斥定理+二项式化简)
查看>>
webapi返回泛型给easyui
查看>>
Java json转model
查看>>
总结过去做项目过程中获取需求分析的一些经验
查看>>
每天一个linux命令(25):linux文件属性详解
查看>>
webview加载地图无法定位(高德地图为例)问题讨论
查看>>
cf 507E. Breaking Good
查看>>