'''
eval()用来把任意字符串转化为Python表达式并进行求值
'''
print(eval('3+4')) #计算表达式的值
a=3
b=4
print(eval('a+b')) #这时候要求变量a和b已存在
import math
eval('help(math.sqrt)')
# Help on built - in function sqrt in module math:\
# sqrt(...)
# sqrt(x)
#
# Return the square root of x.
print(eval('math.sqrt(3)'))
#eval('aa') 此处使用将报错,aa并未被定义
"""在Python 3.x中,input()将用户的输入一律按字符串对待,如果需要将其还原为本来的类型,可以使用内置函数eval(),有时候可能需要配合异常处理结构"""
# x=input()
# print(x)
# print(eval(x))
# x=input()
# print(eval(x))
# x=input()
# print(x)
# try:
# print(eval())
# except:
# print('wrong input')
# a=input('Please input a value') '''
关键字 in:与列表、元组、集合一样,也可以使用关键字in和not in 来判断一个字符串是否出现在另一个字符串中,返回True或False
'''
print('a' in 'abcd')
# True
print('ab' in 'abcde')
# True
print('ac' in 'abcd')
# False
#example:对用户输入进行检查
words = ('测试','非法','暴力')
test = input('请输入')
for word in words:
if word in test:
print('非法')
break
else:
print('正常')
#下面的代码则可以用来测试用户输入中是否有敏感词,如果有就把敏感词替换为3个***
words = ('测试','非法','暴力','话')
text = '这句话里含有非法内容'
for word in words:
if word in text:
text=text.replace(word,'***')
print(text)
# 这句***里含有***内容 '''
startswith(),endswith()
这两个方法用来判断字符串是否以指定字符串开始或结束,可以接收两个整数参数来限定字符串的检测范围
'''
s='Beautiful is better than ugly.'
print(s.startswith('Be')) #检测整个字符串
print(s.startswith('Be',5)) #检测指定范围的起始位置
print(s.startswith('Be',0,5)) #指定检测范围的起始和结束位置
'''另外,这两个方法还可以接收一个字符串元组作为参数来表示前缀或后缀,例如,下面的代码可以列出指定文件夹下所有扩展名为bm、jpg、gif的图片'''
# import os
# [filename for filename in os.listdir(r'/Users/c2apple/Documents') if filename.endswith('.bmp','.jpg','.png')]