python算法技巧——列表、字符串实用技巧
1. 有一个列表如下,strings = 'jingtianshigehaorizi',请删除重复部分且重新排列大小,输出下列结果:strings = 'aeghijnorstz':
strings = 'jingtianshigehaorizi'
strings = set(strings) #除去重复项
strings = list(strings)
strings.sort()
print(''.join(strings))
print(*strings) #不能使用这个,这种输出中间会有空格,不符题
set([iterable]) 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。;
2. 有一个字符串:‘FBI Mark told CIA Linda that the secret USB had given to FBI Peter’,请列出FBI出现的次数,将FBI字符串用XX代替:
msg = 'FBI Mark told CIA Linda that the secret USB had given to FBI Peter'
print(msg.count('FBI')) # FBI出现的次数
msg = msg.replace('FBI', 'XX')
print(msg)
count(str, start= 0,end=len(string)) 方法用于统计字符串里某个字符或子字符串出现的次数 ;
replace(old,new,max) 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次;
3. 输入一个字符串,程序可以判断这是否是网址字符串。
(附:网址字符串是以http://或https://开头)
site = input("请输入网址:")
if site.startswith('http://') or site.startswith('https://'):print('网址格式正确')
else:print('网址格式错误')
startswith(str, beg=0,end=len(string)) 方法用于检查字符串是否是以指定子字符串开头;
4. 有一首法国儿歌(Two tigers),截取一段歌词如下:
Are you sleeping,are you sleeping
Brother Bear Brother Bear?
Morning bells are ringing,morning bells are ringing,
Ding,dang,dong!Ding,dang,dong!
请省略标点符号列出此字符串,然后将字符串转为列表列出,并列出歌曲的字数,最后用单词作为字典的key,出现次数作为值value,生成一个单词次数字典:
song = '''Are you sleeping,are you sleeping?
Brother Bear,Brother Bear?
Morning bells are ringing,morning bells are ringing.
Ding,dang,dong!Ding,dang,dong!'''songlower = song.lower()
#将字符串中大写全部转化成小写
print(songlower)for ch in songlower:if ch in ',.?!':songlower = songlower.replace(ch, ' ')
print('没有符号的歌曲:\n',songlower)songlist = songlower.split()
print('歌曲列表:\n{}'.format(songlist))mylist = {wd:songlist.count(wd) for wd in songlist}
print('歌曲列表字典:\n{}'.format(mylist))
5. 有一个文件里由大部分图片及小部分其他文件组成,如下所示:
tu1.jpg,tu2.png,tu3.gif,tu4.gif,tu5.jpg,tu6.png,tu7.txt,tu8.jpg
请按格式将元素放置到jpg,png,gif,其他列表,然后打印这些列表:
files = ['tu1.jpg','tu2.png','tu3.gif','tu4.gif','tu5.jpg','tu6.png','tu7.txt','tu8.jpg']
jpg = []
png = []
gif = []
other = []
for file in files:if file.endswith('jpg'):jpg.append(file)elif file.endswith('png'):png.append(file)elif file.endswith('gif'):gif.append(file)else:other.append(file)
print('jpg文件有:',jpg)
print('png文件有:',png)
print('gif文件有:',gif)
print('其他文件有:',other)
6. 有一个列表:x = ['abc','def']
请设计两行程序,打印以下结果:[['a','b','c'],['e','f','g']]
x = ['abc','def']
print(list(map(list,x)))
map(func, 序列):将序列的每一项放入到func这个函数里执行
7. 将下列列表[[1,2,3],[4,5,6],[7,8,9]]展开为[1, 2, 3, 4, 5, 6, 7, 8, 9]:
x = [[1,2,3],[4,5,6],[7,8,9]]
a = [i for j in x for i in j]
print(a)
python算法技巧——列表、字符串实用技巧相关推荐
- Python使用数字与字符串的技巧
1.少写数字字面量 "数字字面量(integer literal)" 是指那些直接出现在代码里的数字.它们分布在代码里的各个角落,比如代码 del users[0] 里的 0 就是 ...
- Python算法之旅字符串游戏之无效的身份证
出场人物介绍 小美:小学4年级学生,参加了学校的编程兴趣小组,已经了解了Python语言的基本语法,能够看懂一些简单的程序.她做事风风火火,对所有的事情都很好奇,喜欢打破砂锅问到底,是一个叫人又爱又恨 ...
- vim实用技巧(第二版)........持续更新ing
全书共123个技巧,每天更新两个,计划两个月更新完. (目前更新完技巧39) vim实用技巧第二版全部教学内容 前言 第1章 Vim解决问题的方式 技巧1 认识 . 命令 技巧2 不要自我重复 ...
- 闲心之谈之虚拟货币系列:1、KDJ图实用技巧
1.KDJ图 K线:趋势分析看10和90位置 D线:超买超卖分析看20和80位置 J线:短期线100和0位置 实用场景: 实用技巧1: 实用技巧: 金叉.死叉: K线:趋势分析看10和90位置 结合最 ...
- python从键盘输入一个列表计算输出元素的平均值_python列表查找值_在Python中查找列表平均值的5种方法...
python列表查找值 Hi Folks! In this article, we will have a look at the various ways to find the average o ...
- python最新技术开锁工具_精选26个Python实用技巧,想秀技能先Get这份技术列表!...
原标题:精选26个Python实用技巧,想秀技能先Get这份技术列表! 出品 | AI科技大本营 本文整理了 26 个 Python 有用的技巧,将按照首字母从 A~Z 的顺序分享其中一些内容. al ...
- python filter函数_Python列表的8个实用技巧
原作者: Nik Piepenbreier编译&内容补充: 费弗里原文地址: https://towardsdatascience.com/advanced-python-list-techn ...
- 独家 | 秘籍:10个Python字符串处理技巧(附代码)
作者:马修·梅奥 翻译:陈之炎 校对:和中华 本文约1600字,建议阅读7分钟. 本文为你介绍利用Python处理字符串的一些基本操作. 在探寻文本分析途径时却不知从何下手,该怎么办?那么可以通过这个 ...
- python split()方法_秘籍:10个Python字符串处理技巧(附代码)
作者:马修·梅奥 翻译:陈之炎 校对:和中华 本文约1600字,建议阅读7分钟. 本文为你介绍利用Python处理字符串的一些基本操作. 在探寻文本分析途径时却不知从何下手,该怎么办?那么可以通过这个 ...
最新文章
- XML 解析XML文档 XML约束
- 在内部循环中Continue外部循环
- 区块链 智能合约 简介
- LeetCode Swap Nodes in Pairs
- R有序因子和无序因子(4)
- 学起来 —— CSS 入门基础
- 人工智能(AI)在游戏中的应用(下)
- 大姐,你是不是得了尿频?
- 【活动】HoloLens 黑科技等你来探秘
- Google的电话面试
- I Hate It(HDU-1754)
- C加加学习之路 1——开始
- java log4j 热部署_Java 调式、热部署、JVM 背后的支持者 Java Agent
- 有序表的最小和(element)
- 斐讯k1潘多拉专版固件_斐讯路由器K2刷机-斐讯k1-k2华硕及潘多拉固件下载__飞翔下载...
- Tenserflow 情感分类
- C printf输出格式控制
- java小项目之简单聊天室
- “大数据应用场景”之隔壁老王(连载一)
- ​清华大学提出基于生成对抗神经网络的自然图像多风格卡通化方法并开源代码