in
value = "我是中国人"
#判断“中国”是否在value所代指的字符串中,“中国”是否是value所代指的字符串的子序列。
v1 = "中国" in value
#示例:
content = input("请输入内容:")
if "退钱" in content:
print('包含敏感字符')
#示例
while True:
content = input('请输入内容:')
if '退钱' in content:
print('包含敏感字符')
else:
print(content)
break
注意:从上往下依次排列
运算符 | 描述 |
---|---|
** | 指数(最高优先级) |
~ + - | 按位翻转,一元加号和减号(最后两个的方法名为+@和-@) |
* / % // | 乘,除,取余,取整除 |
+ - | 加法 减法 |
>> << | 右移,左移运算符 |
& | 位‘AND‘ |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not and or | 逻辑运算符 |
整形(int)不同:
1.修改大小写
#验证码示例:用户输入的变量与验证码的变量全部变为小写
check_code = "UNFio"
message = '请输入验证码%s:'%(check_code,)
code = input(message)
new_check_code = check_code.lower()
message = message.lower()
if code == new_check_code:
print("登录成功")
else:
print("登录失败")
#优化后代码:
check_code= "UNFio"
code = input('请输入验证码%s:'%(check_code,))
if code.lower() == check_code.lower():
print("登录成功")
else:
print("登录失败")
2.判断是否可以转换为int()类型
#电话问答,只能输入数字1,2,3,如果不是,请重新输入
print("""欢迎致电10086:
1.话费查询
2.业务办理
3.增值服务
""")
while True:
num = input("请输入数字:")
flage = num.isdigit() #判断num变量是否为整数
if flage ==True:
num = int(num)
while num in {1,2,3}:
if num == 1:
print("话费查询")
break
elif num == 2:
print("业务办理")
break
elif num == 3:
print("增值服务")
break
else:
print("请输入1,2,3")
continue
else:
print("看清楚,输入数字,输入其他无效")
continue
break
3.去除空白:
user = input("请输入用户名:")
new_user1 = user.rstrip() #user去除右空格,赋值给new_user1
new_user2 = new_user1.lstrip() #new_user1去除左空格,赋值给new_user2
data = new_user2.upper() #new_user2全部变为大写,赋值给data
print("---->",data,"<---")
#输入 eiiol 结果为:----> EIIOL <---
4.替换关键字:
变量名.replace(‘关键字‘,‘替换后的内容‘,次数)
message = input("请输入用户名:") #输入:我去你大爷家里玩,去你大爷的,大爷大妈们好和蔼
new_message_1 = message.replace("大爷","**")
new_message_2 = message.replace("大爷","**",2)
print(new_message_1)
print(new_message_2)
"""结果为:
我去你**家里玩,去你**的,**大妈们好和蔼
我去你**家里玩,去你**的,大爷大妈们好和蔼 """
5.切割:split / rsplit
message = ("我想陪你去看电影,牵着你的手去逛街,还想带你去旅游")
new_message_1 = message.split(",")
new_message_2 = message.split(",",1)
new_message_3 = message.rsplit(",",1)
print(new_message_1)
print(new_message_2)
print(new_message_3)
"""输出结果为:
['我想陪你去看电影', '牵着你的手去逛街', '还想带你去旅游']
['我想陪你去看电影', '牵着你的手去逛街,还想带你去旅游']
['我想陪你去看电影,牵着你的手去逛街', '还想带你去旅游']
"""
6.判断是否已关键字开头 / 结尾:startswitch / endswitch
变量名.startswitch("关键字"):已关键字开头
变量名.endswitch("关键字"):已关键字结尾
name = input("请输入字母")
#判断是否已ya开头
flag = name.startswith("ya")
flag = name.endswith("ya")
print(flag)
val = name[0:2]
if val == "ya":
print("已ya开头")
else:
print("不是已ya开头")
7.字符串格式化:format
"变量{0}{1}{2}".format("0",1,2,):后面format大括号内参数传参到前面
name = "我是{0},今年{1}岁".format("yanan",28)
print(name)
8.字符串转换其他编码:encode
name = "李亚楠"
v1 = name.encode("utf-8")
print(v1)
v2 = name.encode("gbk")
print(v2)
9.字符串中循环加入连接符:join
"字符".join(变量名):循环每个元素,并在元素和元素之间加入连接符
name = "yanan"
reset_name = "_".join(name)
print(reset_name)
#结果为y_a_n_a_n
message = ("我想陪你去看电影,牵着你的手去逛街,还想带你去旅游")
num = len(message)
print(num)
#结果为25
v = "yanan"
v[0] #print(v[0])的结果为y
v[-1] #从后往前取
text = input("请输入:")
num = len(text)
index = 0
total = 0
while True:
message = text[index]
if message.isdigit():
print(message)
total += 1
if index == num - 1:
break
index += 1
print(total)
下标从0开始,前取后不取,负数是从后往前数,-1为最后一个字符
v = "liyanan"
v1 = v[2:4] #取出ya
v2 = v[3:7] #取出anan
v3 = v[3:-1] #取出ana
v4 = v[3:] #取出anan
v5 = v[:-2] #取出liyan
v6 = v[-1:-2] #无法取出
v7 = v[-1:1] #无法取出
len()赋值给变量,用变量取下标,应用更灵活
text = input("请输入:")
num = len(text)
if num >=5 : #判断输入的字符串是否大于等于5
new_text = text[-2:] #取最后两个字符
new_text_1=text[num-2:num] #用变量表示下标,取最后两个字符
print(new_text,new_text_1)
else:
print(text)
步长:
根据步长的长度,跨越取字符:
name = "liyanan"
val = name[::2] #取出lynn
val = name[0:4:2] #取出lyn
val = name[::-1] #取出nanayil(字符串的反转)
? for和while的使用场景:(有穷尽优先使用for循环,无穷尽优先使用while循环。不是绝对的)
#for循环打印"yanan"的每个元素:
name = "yanan"
for i in name:
print(i)
#打印1-10的数字,使用range(1,11) = [1,2,3,4,5,6,7,8,9,10]
for i in range(1,11):
print(i)
#打印1-10的数字,排除7不打印
for i in range(1,11):
if i ==7:
pass
else:
print(i)
原文:https://www.cnblogs.com/lynlearnde/p/11579988.html