字符串构造
# 单引号构造字符串
string1 = '"commentTime":"2018-01-26 08:59:30","content":"包装良心!馅料新鲜!还会回购"'
# 双引号构造字符串
string2 = "ymd:'2017-01-01',bWendu:'5℃',yWendu:'-3℃',tianqi:'霾~晴',fengxiang:'南风',aqiInfo:'严重污染'"
# 三引号构造字符串
string3 = ''''nickName':"美美",'content':"环境不错,服务态度超好,就是有点小贵",'createTimestring':"2017-09-30"'''
string4 = '''据了解,持续降雪造成安徽部分地区农房倒损、种植养殖业大棚损毁,
其中合肥、马鞍山、铜陵3市倒塌农房8间、紧急转移安置8人。'''
print(string1)
print(string2)
print(string3)
print(string4)
切片 分割
# 获取身份证号码中的出生日期
print('123456198901017890'[6:14])
# 将手机号中的中间四位替换为四颗星
tel = '13612345678'
print(tel.replace(tel[3:7],'****'))
# 将邮箱按@符分隔开
print('12345@qq.com'.split('@'))
去空格
# 将Python的每个字母用减号连接
print('-'.join('Python'))
# 删除" 今天星期日 "的首尾空白
print(" 今天星期日 ".strip())
# 删除" 今天星期日 "的左边空白
print(" 今天星期日 ".lstrip())
# 删除" 今天星期日 "的右边空白
print(" 今天星期日 ".rstrip())
查找
# 计算子串“中国”在字符串中的个数
string5 = '中国方案引领世界前行,展现了中国应势而为、勇于担当的大国引领作用!'
print(string5.count('中国'))
# 查询"Python"单词所在的位置
string6 = '我是一名Python用户,Python给我的工作带来了很多便捷。'
print(string6.index('Python'))
print(string6.find('Python'))
# 字符串是否以“2018年”开头
string7 = '2017年匆匆走过,迎来崭新的2018年'
print(string7.startswith('2018年'))
# 字符串是否以“2018年”年结尾
print(string7.endswith('2018年'))
正则表达式
# 导入第三方包
import re
# 取出出字符中所有的天气状态
string8 = "{ymd:'2018-01-01',tianqi:'晴',aqiInfo:'轻度污染'},{ymd:'2018-01-02',tianqi:'阴~小雨',aqiInfo:'优'},{ymd:'2018-01-03',tianqi:'小雨~中雨',aqiInfo:'优'},{ymd:'2018-01-04',tianqi:'中雨~小雨',aqiInfo:'优'}"
print(re.findall("tianqi:'(.*?)'", string8))
# 取出所有含O字母的单词
string9 = 'Together, we discovered that a free market only thrives when there are rules to ensure competition and fair play, Our celebration of initiative and enterprise'
print(re.findall('\w*o\w*',string9, flags = re.I)) # 忽略大小写区别
# 将标点符号、数字和字母删除
string10 = '据悉,这次发运的4台蒸汽冷凝罐属于国际热核聚变实验堆(ITER)项目的核二级压力设备,先后完成了压力试验、真空试验、氦气检漏试验、千斤顶试验、吊耳载荷试验、叠装试验等验收试验。'
print(re.sub('[,。、a-zA-Z0-9()]','',string10))
# 将每一部分的内容分割开
string11 = '2室2厅 | 101.62平 | 低区/7层 | 朝南 \n 上海未来 - 浦东 - 金杨 - 2005年建'
split = re.split('[-\|\n]', string11)
print(split)
split_strip = [i.strip() for i in split] # 去掉两边的空格
print(split_strip)
匿名函数
# 按频次高低排序
key_value.sort(key = lambda x : x[1], reverse=True) # key是指按照什么来排序吗,按照每个元组的第二个元素来顺序排序
print(key_value)
应用之猜数字
# 猜数字
import random
def game(min,max):
number = random.randint(min,max) # 随机生成一个需要猜的数字
while True:
guess = float(input('请在%d到%d之间猜一个数字: ' %(min, max)))
if guess < number:
min = guess #重新赋值区间范围
print('不好意思,你猜的的数偏小了!请在%d到%d之间猜一个数!' %(min,max))
elif guess > number:
max = guess
print('不好意思,你猜的的数偏大了!请在%d到%d之间猜一个数!' %(min,max))
else:
print('恭喜你猜对了!')
print('游戏结束!')
break
# 调用函数
game(10,20)