1. ####################概念######################
    '''
  1. int 整数
    str 字符串 一般不存放大量的数据
    bool 布尔值,用来判断。 TrueFalse
    list 列表。存放大量数据,[]表示,里面可以放各种数据类型
    tuple 元祖,只读列表 ()表示
    dict 字典。 {key:value}
    set 集合。 去重
  1. '''
  1. '''
  1. 大小写转换:*——记住
    * upper() 全大写
    title() 首字母大写(只要是不属于英文字母的都是分隔符)
    切来切去:
    center(10,'*') 强行用*在原字符串左右两端拼接,拼接成十个长度
    * strip() 去除前后两边的空格 lstrip() rstrip()
    * replace(oldnew) 替换
    * split() 切割(切完的结果是一个列表里面装着字符串)
    注意:贴边则是有空字符串
    * startswith() endswith 以什么开头
    都可以进行索引的操作
    * count() 计算出现的次数
    * find() 查找xxx在字符串中出现的位置索引,只找第一个,找不到返回-1
    * index() 查找xxx在字符串中出现的位置索引,只找第一个,找不到报错
    条件判断:
    .isalnum 字母数字
    .isdigit 数字
    .isalpha 字母
    .isnumeric 中文数字大小写都可以
    字符串长度:
    * len() 字符串中字符的个数 python中的内置函数)
  2.  
  3. 迭代: ——for循环表示把迭代的对象中的每一个元素赋值给前面的变量
    for 变量 in 可迭代对象:
    循环体,也存在breakcontinue
    else
    当循环结束的时候才会执行
  4.  
  5. '''
  1. #############切片思路#########################

索引: 下标从0开始的数字. 指示的是字符串中的每一个字符

切片: 从源字符串中截取一部分内容作为新字符串
s[start: end: step]
start: 开始
end: 结束. 取不到
step: 步长, 默认是1. 每step取一个. 通过符号来控制方向. +从左往右, -从右往左

  1. s = "中间的,你们为什么不说话.难受"
  1.  
  1. # print(s[3:7]) # ,你们为
  1.  
  1. # print(s[-3:-7]) # 切不到东西, 默认是从左往右切
  2.  
  3. # print (s[::2]) 中间 的, 你们 为什 么不 说话 .难 受
    每个支撑点取第一个
    结果 .
  4.  
  5. #print(s[1:5:3]) # (间的,你们) 间 你 取每个支撑位
  1.  
  1. #print(s[7:3:-1]) #
  1.  
  1. 中间的,你们为什 #先是取7个 然后去掉3个 再把 (你们为什)反过来
  1.  
  1. print(s[-1:-8: -2])
  1. 什么不说话.难受
    .
  1. #################作业######################
  1. name = "aleX leNb"
  2.  
  3. # 1)移除 name 变量对应的值两边的空格,并输出处理结果
    # a=name.strip()
    # print(a)
  4.  
  5. #2)移除name变量左边的"al"并输出处理结果
    # print(name.lstrip('al'))
  6.  
  7. #3)移除name变量右的"Nb",并输出处理结果
    # print(name.rstrip('Nb'))
  8.  
  9. # 4)移除name变量开头的a"与最后的"b",并输出处理结果
  10.  
  11. # print(name.lstrip('a').rstrip())
  12.  
  13. # 5)判断 name 变量是否以 "al" 开头,并输出结果
    # print(name.startswith('al'))
  14.  
  15. # 6)判断name变量是否以"Nb"结尾,并输出结果
    # print(name.endswith('Nb'))
  16.  
  17. # 7)将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
    # print(name.replace('l','p'))
  18.  
  19. # 8)将name变量对应的值中的第1个"l"替换成"p",并输出结果
  1. #print(name.replace('l','p',1))
  1. # 9)将 name 变量对应的值根据 所有的"l" 分割,并输出结果。
    # print(name.split('l'))
  2.  
  3. # 10)将name变量对应的值根据第一个"l"分割,并输出结果。
    # print(name.split('l'))
  4.  
  5. # 11)将 name 变量对应的值变大写,并输出结果
    # print(name.upper())
  6.  
  7. # 12)将 name 变量对应的值变小写,并输出结果
    # print(name.lower())
  8.  
  9. # 13)将name变量对应的值首字母"a"大写,并输出结果
    # print(name.capitalize())
  10.  
  11. # 14)判断name变量对应的值字统计"l"出现次数,并输出结果
    # print(name.count('l'))
  12.  
  13. # 15)如果判断name变量对应的值前四位"l"出现几次,并输出结果
    # print(name.count('l',0,5))
  14.  
  15. # 16)从name变量对应的值中找到"N"对应的索引(如果找不到则报错),并输出结果
    # print(name.index('N'))
  16.  
  17. # 17)从name变量对应的值中找到"N"对应的索引(如果找不到则返回-1)输出结果
    # print(name.find('N'))
  18.  
  19. # 18)从name变量对应的值中找到"X le"对应的索引,并输出结果
  20.  
  21. # print(name.index("X le"))
  22.  
  23. # 19)请输出 name 变量对应的值的第 2 个字符?
  24.  
  25. # print(name[1])
  26.  
  27. # 20)请输出 name 变量对应的值的前 3 个字符?
  28.  
  29. # print(name[0:3])
  30.  
  31. # 21)请输出 name 变量对应的值的后 2 个字符?
  32.  
  33. # print(name[-2:])
  34.  
  35. # 22)请输出 name 变量对应的值中 "e" 所在索引位置?
  36.  
  37. # print(name.find("e"))

  1. # 2.有字符串
    s = "123a4b5c"
    # 1)通过对s切⽚形成新的字符串s1,s1 = "123"
    # print(s[0:3])
  2. # 2)通过对s切⽚形成新的字符串s2,s2 = "a4b"
    # print(s[3:6])
  3. # 3)通过对s切⽚形成新的字符串s3,s3 = "1345"
    # print(s[::2])
  4. # 4)通过对s切⽚形成字符串s4,s4 = "2ab"
    # print(s[1:6:2])
    # 5)通过对s切⽚形成字符串s5,s5 = "c"
    # print(s[7:100])
    # 6)通过对s切⽚形成字符串s6,s6 = "ba2"
    # s = "123a4b5c"
  1. # print(s[-3:-2])
  2. # print(s[-3::-2])
  3. #3.使⽤while和for循环分别打印字符串s="asdfer"中每个元素。
    # s="asdfer"
    #
    # for i in s:
    # print(i)
  4. #4.使⽤for循环对s="asdfer"进⾏循环,但是每次打印的内容都是"asdfer"。
    # s="asdfer"
    # for i in s:
    # print(s)
  5. # 5.使⽤for循环对s="abcdefg"进⾏循环,每次打印的内容是每个字符加上sb,
    # 例如:asb, bsb,csb,...gsb。
    # s="abcdefg"
    # for i in s:
    # print(i+'sb')
  6. # 6.使⽤for循环对s="321"进⾏循环,打印的内容依次是:"倒计时3秒","倒计时
    # 2秒","倒计时1秒","出发!"。
  7. # s="321"
    # for i in s:
    # print(f'倒计时{i}秒')
  8. # 7,实现一个整数加法计算器(两个数相加):
    # 如:content = input("请输入内容:") ⽤户输入:5+9或5+ 9或5 + 9,然后进⾏分割再进⾏计算
  1. content=input("请输入内容>>>")
  2. a=content.split('+')
  3. c=int(a[0])+int(a[1])
  4. print("结果为%s" %(c))
  5.  
  6. content= input('请输入内容>>>')
  7. num = content.split('+')
  8. s = (int(num[0].strip()) + int(num[1].strip()))
  9. print(s)
  1. # 8,升级题:实现一个整数加法计算器(多个数相加):
    # 如:content = input("请输入内容:") ⽤户输入:5+9+6 +12+ 13,然后进⾏
    # 分割再进⾏计算。
  1. content=input(">>>>")
  2. a=content.split('+')
  3. sum=0
  4. for i in a:
  5. sum=sum+int(i)
  6. print(sum)
  7.  
  8. content = input('>>>').strip()
  9. n = content.split('+')
  10. sum = 0
  11. for i in n:
  12. sum += int(i)
  13. print('终极运算之最后结果:%s'%sum)
  1. # 9,计算⽤户输⼊的内容中有几个整数(以个位数为单位)。
    # 如:content = input("请输入内容:") # 如fhdal234slfh98769fjdla
    count=0
    content = input("请输入内容:")
    for i in content:
    if i.isdigit()
        count+=1
    print(count)
  1. 10、写代码,完成下列需求:
    ⽤户可持续输⼊(⽤while循环),⽤户使⽤的情况:
    输⼊A,则显示⾛⼤路回家,然后在让⽤户进⼀步选择:
    是选择公交,还是步⾏? ①,选择公交,显示10分钟到家,并退出整个程序。
    ②,选择步⾏,显示20分钟到家,并退出整个程序。
    输⼊B,则显示⾛⼩路回家,并退出整个程序。
    输⼊C,则显示绕道回家,然后在让⽤户进⼀步选择:是选择游戏厅玩会,还是网吧?
    选择游戏厅,则显示 ‘⼀个半小时到家,爸爸在家,拿棍等你。’并让其重新输⼊AB,C选项。
    选择网吧,则显示‘两个小时到家,妈妈已做好了战⽃准备。’并让其重新输⼊AB,C选项。
  1.  
  1. while True:
  2. content = input('请输入A B C:')
  3. if content=='A':
  4. home=int(input('1,是选择公交,2,还是步行?'))
  5. if home ==int(1):
  6. print('①,选择公交,显示10分钟到家,并退出整个程序')
  7. break
  8. elif home ==int(2):
  9. print('①,选择步行,显示20分钟到家,并退出整个程序')
  10. break
  11. elif content =='B':
  12. print('则显示小路回家,并退出整个程序')
  13. break
  14. elif content =='C':
  15. wang = input('是选择游戏厅玩会,还是网吧?')
  16. if wang =='游戏厅':
  17. print('一个半小时到家,爸爸在家,拿棍等你。')
  18. else:
  19. print('两个小时到家,妈妈已做好了战准备')
  20. else:
  21. print("输入错误. ")
  1.  
  1. 11、写代码:计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和?
  1. count = 1
  2. sum = 0
  3. while count <100:
  4. if count % 2 == 0:
  5. if count == 88:
  6. count =count+1 #如果不自加1,count一直是88,跳不出去循环
  7. continue
  8. sum -= count
  9. print(sum)
  10. else:
  11. sum += count
  12. count += 1
  13. print(sum)
  1. 12. (升级题)判断一句话是否是回文.回⽂: 正着念和反着念是⼀样的. 例如, 上海
    自来水来自海上(升级题)
  1.  
  1. content=input('请输入')
  2. if content[::-1] == content:
  3. print('是回文')
  4. else:
  5. print('元宝是元宝')
  1.  
  1. 13. 输入一个字符串,要求判断在这个字符串中大写字母,小写字母,数字,
    其它字符共出现了多少次,并输出出来
  1.  
  1. coutent=input('请输入>>>'.strip())
  2. upper=0
  3. lower=0
  4. number=0
  5. other=0
  6. for i in coutent:
  7. if i.isupper():
  8. upper=upper+1
  9. elif i.islower():
  10. lower=lower+1
  11. elif i.isdigit():
  12. number+=1
  13. else:
  14. other+=1
  15. print(f"大写{upper},小写{lower},数字{number},其他{other}")
  1. 14、制作趣味模板程序需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
    如:敬爱可亲的xxx,最喜欢在xxx地方干xxx
  1. name=input("请输入姓名:")
  2. place=input("请输入地点:")
  3. love=input("请输入爱好:")
  4. print(f'敬爱的{name},最喜欢在{place}爱好{love}')
  1. 15.给出百家姓. 然后用户输入一个的名字. 判断这个人是否是百家姓中的姓氏(升级题)
  1. first_names = """
  2. 赵钱孙李,周吴郑王。
  3. 冯陈褚卫,蒋沈韩杨。
  4. 朱秦尤许,何吕施张。
  5. 孔曹严华,⾦魏陶姜。
  6. 戚谢邹喻,柏⽔窦章。
  7. 云苏潘葛,奚范彭郎。
  8. 鲁⻙昌⻢,苗凤花⽅。
  9. 俞任袁柳,酆鲍史唐。
  10. 费廉岑薛,雷贺倪汤。
  11. 滕殷罗毕,郝邬安常。
  12. 乐于时傅,⽪卞⻬康。
  13. 伍余元⼘,顾孟平⻩。
  14. 和穆萧尹,姚邵湛汪。
  15. 祁⽑禹狄,⽶⻉明臧。
  16. 计伏成戴,谈宋茅庞。
  17. 熊纪舒屈,项祝董梁。
  18. 杜阮蓝闵,席季麻强。
  19. 贾路娄危,江童颜郭。
  20. 梅盛林刁,钟徐邱骆。
  21. ⾼夏蔡⽥,樊胡凌霍。
  22. 虞万⽀柯,昝管卢莫。
  23. 经房裘缪,⼲解应宗。
  24. 丁宣贲邓,郁单杭洪。
  25. 包诸左⽯,崔吉钮龚。
  26. 程嵇邢滑,裴陆荣翁。
  27. 荀⽺於惠,甄曲家封。
  28. 芮羿储靳,汲邴糜松。
  29. 井段富巫,乌焦巴⼸。
  30. 牧隗⼭⾕,⻋侯宓蓬。
  31. 全郗班仰,秋仲伊宫。
  32. 宁仇栾暴,⽢钭厉戎。
  33. 祖武符刘,景詹束⻰。
  34. 叶幸司韶,郜黎蓟薄。
  35. 印宿⽩怀,蒲邰从鄂。
  36. 索咸籍赖,卓蔺屠蒙。
  37. 池乔阴鬱,胥能苍双。
  38. 闻莘党翟,谭贡劳逄。
  39. 姬申扶堵,冉宰郦雍。
  40. 卻璩桑桂,濮⽜寿通。
  41. 边扈燕冀,郏浦尚农。
  42. 温别庄晏,柴瞿阎充。
  43. 慕连茹习,宦艾⻥容。
  44. 向古易慎,⼽廖庾终。
  45. 暨居衡步,都耿满弘。
  46. 匡国⽂寇,⼴禄阙东。
  47. 欧⽎沃利,蔚越夔隆。
  48. 师巩厍聂,晁勾敖融。
  49. 冷訾⾟阚,那简饶空。
  50. 曾毋沙乜,养鞠须丰。
  51. 巢关蒯相,查后荆红。
  52. 游竺权逯,盖益桓公。
  53. 万俟司⻢,上官欧阳。
  54. 夏侯诸葛,闻⼈东⽅。
  55. 赫连皇甫,尉迟公⽺。
  56. 澹台公冶,宗政濮阳。
  57. 淳于单于,太叔申屠。
  58. 公孙仲孙,轩辕令狐。
  59. 钟离宇⽂,⻓孙慕容。
  60. 鲜于闾丘,司徒司空。
  61. 丌官司寇,仉督⼦⻋。
  62. 颛孙端⽊,巫⻢公⻄。
  63. 漆雕乐正,壤驷公良。
  64. 拓跋夹⾕,宰⽗⾕梁。
  65. 晋楚闫法,汝鄢涂钦。
  66. 段⼲百⾥,东郭南⻔。
  67. 呼延归海,⽺⾆微⽣。
  68. 岳帅缑亢,况郈有琴。
  69. 梁丘左丘,东⻔⻄⻔。
  70. 商牟佘佴,伯赏南宫。
  71. 墨哈谯笪,年爱阳佟。
  72. 第五⾔福,百家姓终。
  73. """
  74.  
  75.  
  76. content=input("请输入你的姓名:")
  77. if content[0] in first_names:
  78. print('你的名字在百家姓中')
  79. else:
  80. print('你的名字不在百家姓中')
  1.  
  1.  
  1.  
  1.  
  1.  
  1.  
  1.  
  1.  

python 字符串 切片的更多相关文章

  1. Python字符串切片操作知识详解

    Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...

  2. DAY3(PYTHON)字符串切片

    字符串调整: capitalize()   #首字母大写 upper()        #全大写 lower()      #全小写 swapcase() #大小写翻转 字符串切片: 顾头不顾尾!!! ...

  3. Python字符串切片

    1.字符串切片:从字符串中取出相应的元素,重新组成一个新的字符串 语法: 字符串[    开始元素下标  :  结束元素下标  :  步长     ]   # 字符串的每个元素都有正负两种下标 步长: ...

  4. Python 字符串切片

    #-*- coding:utf-8 -*- #字符串切片 names = "abcdefgh" ''' 切片语法 names[起始位置:终止位置:步长] 起始位置:即字符串的下标, ...

  5. python 字符串切片知识巩固

    切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分).我们使用一对方括号.起始偏移量start.终止偏移量end 以及可选的步长step 来定义一个分片. 格式: [start:en ...

  6. Python 字符串切片(slice)

    切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分).我们使用一对方括号.起始偏移量start.终止偏移量end 以及可选的步长step 来定义一个分片. 格式: [start:en ...

  7. python学习第四天 --字符编码 与格式化及其字符串切片

    字符编码 与格式化 第三天已经知道了字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采 ...

  8. python中的字符串切片

    python中的字符串切片,似乎有点乱,例如: >>>pystr='Python' >>>pystr[2:5] 就会输出 'tho' 这该怎样理解呢?中括号[2:5 ...

  9. Python 对字符串切片

    对字符串切片字符串 'xxx'和 Unicode字符串 u'xxx'也可以看成是一种list,每个元素就是一个字符.因此,字符串也可以用切片操作,只是操作结果仍是字符串:>>> 'A ...

随机推荐

  1. 使用tree命令导出文件夹/文件的目录树

    前提:己安装扩展: 介绍: TREE [drive:][path] [/F] [/A] /F   显示每个文件夹中文件的名称.(带扩展名)   /A   使用 ASCII 字符,而不使用扩展字符. t ...

  2. 爬虫_拉勾网(selenium)

    使用selenium进行翻页获取职位链接,再对链接进行解析 会爬取到部分空列表,感觉是网速太慢了,加了time.sleep()还是会有空列表 from selenium import webdrive ...

  3. Shell基础 - Bash基础功能

    历史命令 history选项: -c 清空历史命令 -w 立即保存历史命令Linux 下输入过的历史命令,都会保存在根目录下的:~/root/.bash_history 文件中默认保存 1000 条, ...

  4. 【CF671D】Roads in Yusland(贪心,左偏树)

    [CF671D]Roads in Yusland(贪心,左偏树) 题面 洛谷 CF 题解 无解的情况随便怎么搞搞提前处理掉. 通过严密(大雾)地推导后,发现问题可以转化成这个问题: 给定一棵树,每条边 ...

  5. Luogu P5283 / LOJ3048 【[十二省联考2019]异或粽子】

    联考Day1T1...一个考场上蠢了只想到\(O(n^2)\)复杂度的数据结构题 题目大意: 求前\(k\)大区间异或和的和 题目思路: 真的就是个sb数据结构题,可持久化01Trie能过(开O2). ...

  6. linux统计使用最多的10个命令

    # cat /root/.bash_history  | awk '{print $1}' | sort | uniq -c | sort -nr | head history      查看命令历史 ...

  7. 「SCOI2016」背单词 解题报告

    「SCOI2016」背单词 出题人sb 题意有毒 大概是告诉你,你给一堆n个单词安排顺序 如果当前位置为x 当前单词的后缀没在这堆单词出现过,代价x 这里的后缀是原意,但不算自己,举个例子比如abc的 ...

  8. nginx日志文件的定时切割与归纳

    应用环境:生产环境中的Nginx服务器,由于访问日志文件增长速度非常快,日志太大会严重影响服务器效率.同时,为了 方便对日志进行分析计算,须要对日志文件进行定时切割.定时切割的方式有按月切割.按天切割 ...

  9. IO创建Socket通信中慎用BufferReader中的readLine()

    在编写Socket的Demo的时候,在Server中使用BufferReader获取从客服端发送过来的内容 package cn.lonecloud.socket; import cn.loneclo ...

  10. 万物互联之~RPC专栏

    3.RPC引入 上篇回顾:万物互联之~深入篇 Code:https://github.com/lotapp/BaseCode/tree/master/python/6.net/6.rpc/ 其他专栏最 ...