while循环 操作列表与字典
1、在列表间移动元素
#!/usr/bin/env python
#filename=list.py
num1 = [1,3,5,7,9,11,13,15]
num2 = []
while num1:
interest_number = num1.pop()
num2.append(interest_number)
print(num2)
#实例是一个最简单的在列表间移动元素的脚本#
会发现效果是:
[root@Python-Test Day3]# ./list.py
[15, 13, 11, 9, 7, 5, 3, 1]
因为num1.pop()是从最后一个开始pop的,所以导致整个mun2是ASSIC逆序的,可以通过函数sort()来进排序
while num1:
interest_number = num1.pop()
num2.append(interest_number)
num2.sort()
print(num2)
[root@Python-Test Day3]# ./list.py
[1, 3, 5, 7, 9, 11, 13, 15]
删除列表中的特定元素:
注意看如下代码
>>> pets = [ 'dog', 'cat', 'rabbit', 'goldfish','cat']
>>> pets.remove('cat')
>>> pets
['dog', 'rabbit', 'goldfish', 'cat']
有一个宠物列表“pets”,其中多次出现了‘cat’这个元素,现在需要从此列表中移除‘cat’元素,
使用之前的list.remove(' ’)会发现只是把位于第一个index的cat删除了。没有移除所有,这个时候需要使用到while循环来帮忙了
代码段:
#!/usr/bin/env python
#filename while_list.py
pets = [ 'dog','cat','goldfish','cat','pig']
while 'cat' in pets:
pets.remove('cat')
print(pets)
根据用户输入来填充字典:(例如,问卷调查)
#!/usr/bin/env python
#filename=questionnaire.py
love_av = {} #定义一个空字典#
polling_active = True
while polling_active:
name = input("\n What is your name? :") #第一个input存放到变量 name#
response = input("\n Which actor do you like better? (Takizawa Rola/Maria Ozawa) :") #第二个input存放到变量 response#
love_av[name] = response #编辑字典 name为键,response为值#
repeat = input("\n Do you have any other hobbies? (yes/no) :")
if repeat == 'no':
polling_active = False
print("\n -----Poll Results-----")
for name,response in love_av.items():
print(name.title() + " prefer " + response.title())
这段交互代码有一个缺陷:
就是当用户输入的是yes/no选项出现大小写混搭的时候,程序无法区分。
改进——
把repeat 变量进行一次转换
repeat = repeat.upper() #无论输入什么。全部转化为大写 #
if repeat == 'NO':
polling_active = False
这时候,不管用户输入No\nO\NO\no 都可以被程序所识别。
while循环 操作列表与字典的更多相关文章
- 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环
高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...
- Python基础、判断、循环、列表、字典,day1
一.Python 简介 1.介绍 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标 ...
- Python基础之(判断,循环,列表,字典)
一.python介绍 Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在 ...
- python基础练习,循环、列表、字典、数组
# encoding: utf-8 ''' @author: mark @file: 20200214.py @time: 2020/2/14 14:21 @software: PyCharm ''' ...
- python-判断、循环、列表、字典
一.如何将两个列表合并成一个字典 运用dict(zip()) 例如: usernames = ['xiaohei', 'xiaobai', 'xiaoming'] passwords = ['1234 ...
- while循环处理列表和字典
一.在列表之间移动元素 假设有一个列表,里面存放的是网站新注册但没有验证的用户,验证这些用户后,如何将它们移动到另一个已验证用户列表中呢? 其中一种方法是使用while循环,在验证用户的同时,将其从未 ...
- Python【第二课】 字符串,列表,字典,集合,文件操作
本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或&quo ...
- join,列表和字典用for循环的删除,集合,深浅拷贝
1.join() 将列表转换成字符串,并且每个字符之间用另一个字符连接起来,join后面必须是可迭代的对象(字符串,列表,元组,字典,集合),数字不能迭代 例如: s = ['a','b','c'] ...
- 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作
声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/ 模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...
随机推荐
- ViewPager—02图片无限轮播
布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...
- 鼠标滚动:mousewheel事件在Firefox采用DOMMouseScroll事件的统一处理
这是一个小事件,但当下的WEB应用交互非常丰富,判断鼠标的滚动来执行相应的操作是比较常见的.我用Chrome/IE/Firefox/Opera 4种浏览器做测试,发现只有firefox的处理方法有很大 ...
- C++ fstream 详解
最近在写哈夫曼压缩,遇到了一个比较让人头疼的问题,那就是对文件的读写操作,尤其是以二进制的形式来读写,无奈C++Primer第五版上写的并不详细,很多让人困惑的地方没有涉及或者没有讲清楚.于是这几天我 ...
- CI Weekly #17 | flow.ci 支持 Java 构建以及 Docker/DevOps 实践分享
这周一,我们迫不及待写下了最新的 changelog -- 项目语言新增「Java」.创建 Java 项目工作流和其它语言项目配置很相似,flow.ci 提供了默认的 Java 项目构建流程模版,快去 ...
- spring项目log4j使用入门
log4j是Java开发中经常使用的一个日志框架,功能强大,配置灵活,基本上可以满足项目开发中对日志功能的大部分需求.我前后经历了四五个项目,采用的日志框架都是log4j,这也反应了log4j受欢迎的 ...
- 【CSS】如何用css做一个爱心
摘要:HTML的标签都比较简单,入门非常的迅速,但是CSS是一个需要我们深度挖掘的东西,里面的很多样式属性掌握几个常用的便可以实现很好看的效果,下面我便教大家如何用CSS做一个爱心. 前期预备知识: ...
- 人生第一次hash
人生的第一次hash交给了模板题. 讲道理,还没有别人快排要快,就比暴力快那么一点... 难道我写的hash就那么菜么? 我想了想,光是处理字符串就O(n*len).. 这是hash的正确写法吗?我都 ...
- C++ count_if/erase/remove_if 用法详解
每次使用这几个算法时都要去查CPP reference,为了能够加深印象,整理一下基本应用. cout/cout_if: return the number of elements satisfyi ...
- C语言学习第八章
今天开始学习字符串,学完以后最低要做到了解什么是字符串,以及字符串的一些应用方法,毕竟字符串还是很常见的. 简单的字符串"helloworld",这个字符串大家应该都很眼熟,学编程 ...
- .NET 二维码生成(ThoughtWorks.QRCode)【转发jiangys】
.NET 二维码生成(ThoughtWorks.QRCode) 2015-06-21 22:19 by jiangys, 3790 阅读, 8 评论, 收藏, 编辑 引用ThoughtWorks.QR ...