python 基础复习 03



昨天偶然听到 词so good,特在此分享一下

'''
天地悠悠 过客匆匆
潮起又潮落
恩恩怨怨 生死白头
几人能看透
红尘啊滚滚 痴痴啊情深
聚散终有时
留一半清醒 留一半醉
至少梦里有你追随
我拿青春赌明天
你用真情换此生
岁月不知人间 多少的忧伤
何不潇洒走一回
'''



"""
ascii:字母,数字,特殊符号 1 个字节,8
Unicode: 16位 两个字节 升级32位 四个字节
utf-8:最少一个字节 8位表示。 英文字母 8 1个字节
欧洲16位, 2 个字节
中文24位, 3个字节
gbk:中文 2 个字节,英文字母1个字节。
"""

  1 """小练习 
  2 有字符串 s = '132a4g5t'
  3 题:通过对列表的切片形成新的字符串,s1,s1 = '123
  4 '"""
  5 s = '132a4g5t'
  6 s1 = s[0]+s[2]+s[1]
  7 print(s1)
  8 
  9 
 10 #使用while和for循环分别打印字符串ss='asdfer'中每个元素
 11 
 12 #for
 13 # s = 'qazwsx'
 14 # for i in s:
 15 #     print(i)
 16 
 17 
 18 #while
 19 # s = 'qazwsx'
 20 # index = 0
 21 # while 1:
 22 #     print(s[index])
 23 #     index += 1
 24 #     if index == len(s):
 25 #         break
 26 
 27 
 28 
 29 
 30 #有变量 name = "aleX leNb" 完成如下操作 
 31 
 32 # 1)移除 name 变量对应的值两边的空格,并输出处理结果。
 33 # name = "aleX leNb"
 34 # a1 = name.replace(' ', '')
 35 # print(a1)
 36 # replace('c1','c2'): 把字符串里的c1 替换成c2。
 37 
 38 
 39 # 2)移除 name 变量左边的 ;'al'并输出处理结果
 40 # name = "aleX leNb"
 41 # a2 = name[2:]
 42 # print(a2)
 43 
 44 
 45 # 3)移除 name 变量右面的 'Nb',并输出处理结果
 46 # name = "aleX leNb"
 47 # a3 = name[:-2]
 48 # print(a3)
 49 
 50 
 51 # 4)移除 name 变量开头的 'a'与最后的'b',并输出处理结果
 52 # name = "aleX leNb"
 53 # a4 = name[1:-1]
 54 # print(a4)
 55 
 56 
 57 
 58 # 5)判断 name 变量是否以'al'开头,并输出结果
 59 # name = "aleX leNb"
 60 # a5 = name.startswith("al")
 61 # print(a5)
 62 
 63 
 64 
 65 # 6)判断 name 变量是否以'Nb'结尾,并输入结果
 66 # name = "aleX leNb"
 67 # a6 = name.endswith("Nb")
 68 # print(a6)
 69 
 70 
 71 # 7)将 name 变量对应的值中的 所有的'l' 替换为'p',并输出结果
 72 # name = "aleX leNb"
 73 # a7 = name.replace("l", "p")
 74 # print(a7)
 75 
 76 
 77 
 78 # 8)将 name 变量对应的值中的第一个'l'替换成'p',并输出结果
 79 # name = "aleX leNb"
 80 # a8 = name.replace("l", "p" ,1)
 81 # print(a8)
 82 
 83 
 84 
 85 # 9)将 name 变量对应的值根据 所有的'l'分割,并输出结果
 86 # name = "aleX leNb"
 87 # a9 = name.split("l") # split 可以把字符串转换成 列表  str--->list
 88 # print(a9)
 89 
 90 
 91 # 10)将 name 变量对应的值根据第一个'l'分割,并输出结果
 92 # name = "aleX leNb"
 93 # b1 = name.split("l", 1)
 94 # print(b1)
 95 
 96 
 97 # 11)将 name 变量对应的值变大写,并输出结果
 98 # name = "aleX leNb"
 99 # b2 = name.upper()
100 # print(b2)
101 
102 
103 
104 # 12)将 name 变量对应的值变小写,并输出结果
105 # name = "aleX leNb"
106 # b3 = name.lower()
107 # print(b3)
108 
109 
110 # 13)将 name 变量对应的值首字母'a'大写,并输出结果
111 # name = "aleX leNb"
112 # b4 = name.capitalize()
113 # print(b4)
114 
115 
116 # 14)判断 name 变量对应的值字母'l'出现几次,并输出结果
117 # name = "aleX leNb"
118 # b5 = name.count("l")
119 # print(b5)
120 
121 
122 
123 # 15) 如果判断name变量对应的值前四位'l'出现几次,并输出结果
124 # name = "aleX leNb"
125 # b6 = name[0:4]
126 # print(b6)
127 # b7 = b6.count("l")
128 # print(b7)
129 
130 
131 
132 # 16) 从name变量对应的值中找到'N'对应的索引(如果找不到则报错),并输出结果
133 # name = "aleX leNb"
134 # b8 = name.index("N")
135 # print(b8)
136 
137 
138 # 17) 从name变量对应的值中找到'N'对应的索引(如果找不到则返回-1),输出结果
139 # name = "aleX leNb"
140 # b9 = name.find("N")
141 # print(b9)
142 
143 
144 # 18) 从name变量对应的值中找到'X le'对应的索引,并输出结果
145 # name = "aleX leNb"
146 # c1 = name.index("X le")
147 # print(c1)
148 
149 
150 
151 #  实现一个整数加法计算器:
152 # 如:content=input("请您输入内容:")  用户输入:5+9 或 5+ 9 或 5 + 9,
153 # 然后进行分割再进行计算
View Code


 1 #  实现一个整数加法计算器:
 2 # 如:content=input("请您输入内容:")  用户输入:5+9 或 5+ 9 或 5 + 9,
 3 # 然后进行分割再进行计算
 4 
 5 #第一种方法
 6 # content = input('>>>').strip()  # 用户有可能输入空格 去除空格
 7 # index = content.find("+")
 8 # a = int(content[:index])
 9 # b = int(content[index+1:])
10 # print(a+b)
11 
12 
13 #第二种方法   要点:!!split 可以把字符串转换成列表  可以更好地操作!!!
14 content = input('>>>').strip()
15 conl = content.split("+")
16 num = 0
17 for i in conl:
18     num += int(i)
19 print(num)
1 #任意输入一串文字+数字  统计出来数字的个数
2 
3 s = input("请输入:")
4 count = 0
5 for i in s:
6     if i.isdigit():
7         count += 1
8 print(count)
 1 # 列表的操作
 2 
 3 #
 4 
 5 # li = ["nihao", "zaijian", "baibai"]
 6 # # 增加 append  增加到列表的最后一个
 7 # li.append("seeyou")
 8 # print(li)  #['nihao', 'zaijian', 'baibai', 'seeyou']
 9 
10  
11 
12 # 用户可以无限输入,当想要停止的时候,按Q退出
 1 # 用户可以无限输入,当想要停止的时候,按Q退出
 2 
 3 li = ["hello", "good", "pioneer"]
 4 while 1:
 5     username = input("请输入要添加的内容:")
 6     if username.strip().upper() == 'Q':
 7         break
 8     else:
 9         li.append(username)
10 print(li)
  1 # insert  可以指定插入的地方
  2 # li = ["nihao", "zaijian", "baibai"]
  3 # li.insert(2, "shier")
  4 # print(li)
  5 
  6 
  7 #  extend 把插入的东西分解成最小元素插入
  8 # li = ["hello", "bye", "seeyou"]
  9 # li.extend("good")
 10 # print(li)  # ['hello', 'bye', 'seeyou', 'g', 'o', 'o', 'd']
 11 
 12  
 13 
 14 # li = ["hello", "bye", "seeyou"]
 15 # li.extend(123)
 16 # print(li)
 17 #  报错 TypeError: 'int' object is not iterable  int 不是可迭代对象
 18 
 19  
 20 
 21 # li = ["hello", "bye", "seeyou"]
 22 # li.extend([1,2,3])
 23 # print(li)  # ['hello', 'bye', 'seeyou', 1, 2, 3] 列表可以
 24 
 25 
 26 
 27 #
 28 
 29 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 30 # li.pop(1)  # 根据索引删除  如果什么都不写 默认删除最后一个
 31 # print(li)
 32 
 33 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 34 # name = li.pop(1)  # 根据索引删除  
 35 # print(name,li)
 36 # # pop() 有返回值 可以显示被删除的内容
 37 
 38  
 39 
 40 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 41 # li.remove("hello")
 42 # print(li)  # remove 按元素去删除
 43 
 44 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 45 # li.clear()  #  清空列表
 46 # print(li)
 47 
 48 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 49 # del li
 50 # print(li)  # 删除列表
 51 
 52 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 53 # del li[:2]
 54 # print(li)  # 可以使用切片 再用del删除
 55 
 56 
 57 #
 58 
 59 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 60 # li[0] = "good"
 61 # print(li)
 62 
 63 #  切片去改元素  只要切片去改 没有任何规律  你写多少 都按照迭代给你去处理
 64 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 65 # li[0:2] = "pioneer"  # ['p', 'i', 'o', 'n', 'e', 'e', 'r', 'seeyou', 1, 2, 3]
 66 # print(li)  # "pioneer" 替换了前两个元素
 67 
 68 #
 69 
 70 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 71 # for i in li:
 72 #     print(i)
 73 # print(li[0:2])
 74 
 75 
 76 
 77 
 78 #  公共方法
 79 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 80 # l = len(li)
 81 # num = li.count("bye") #  bye 在 li 中出现的次数
 82 # print(l)
 83 # print(num)
 84 
 85 # 列表中通过元素找索引只有index
 86 # li = ['hello', 'bye', 'seeyou', 1, 2, 3]
 87 # print(li.index(3))
 88 
 89 # 快速排序 sort 正向排序
 90 # li = [1,7,3,9,5,6]
 91 # li.sort()
 92 # print(li)
 93 
 94 # reverse 反向排序
 95 # li = [1,7,3,9,5,6]
 96 # li.sort(reverse=True)
 97 # print(li)
 98 
 99 # 反转
100 # li = [1,7,3,9,5,6]
101 # li.reverse()
102 # print(li)  # [6, 5, 9, 3, 7, 1]
103 
104 
105 
106 # 列表的嵌套
107 
108 # li = ["lizy", "wen", "happy", ["蜘蛛", "laoshi",99], 98]
109 # print(li[3][0][1])
110 # name = li[0].capitalize()
111 # print(name)
112 # print(li)
113 # li[0] = name
114 # print(li)
115 # print(li[1].replace("wen", "王女士"))
116 # print(li)
117 # li[1] = li[1].replace("wen", "王女士")
118 # print(li)
119 
120 # li = ["lizy", "wen", "happy", ["蜘蛛", "laoshi",99],98]
121 # name = li[3][1].upper()
122 # print(name)
123 # li[3][1] = name
124 # print(li)
125 
126 
127 
128 #元祖 只读列表 不可更改 可循环 可切片
129 
130 # tu = (1, 2, 3, "alex", [2, 3, 4, "taibai"], "egon")
131 # print(tu[3])
132 # print(tu[0:4])
133 # for i in tu:
134 #     print(i)
135 # tu[4][3] = tu[4][3].upper()
136 # print(tu)
137 
138 
139 # join 可以让列表转换成字符串 list--->str
140 # split 可以让字符串转换成列表  str ----> list
141 # li = ["daxiang", "laoshu", "zhizhu", "女神"]
142 # s = "".join(li)
143 # print(s)
144 
145  
146 
147 # range
148 #特点:1)顾头不顾尾
149 #   相当于一个列表  不过里面只有数字
150 #    还有步长
151 # for i in range(10):
152 #     print(i)
153 
154 # for i in range(0,10,2):
155 #     print(i)
156 
157 # for i in range(10,0,-1):
158 #     print(i)  # 倒着来
159 
160 # for i in range(0,10,-1):
161 #     print(i)  # 什么都没有 不报错
1 #  要求 遇到列表就遍历
2 li = [1,2,3,5,"alex",[2,3,4,5,"liay"],"zhizhu"]
3 for i in li:
4     if type(i) == list:
5         for x in i:
6             print(x)
7     else:
8         print(i)

 注:本文是根据老男孩课程内容整理而成的,本文仅供个人笔记使用,如果有侵犯,请联系我,我立即撤销。

原文地址:https://www.cnblogs.com/pioneerLee/p/10160933.html