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循环 操作列表与字典的更多相关文章

  1. 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环

    高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...

  2. Python基础、判断、循环、列表、字典,day1

    一.Python 简介 1.介绍 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标 ...

  3. Python基础之(判断,循环,列表,字典)

    一.python介绍 Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在 ...

  4. python基础练习,循环、列表、字典、数组

    # encoding: utf-8 ''' @author: mark @file: 20200214.py @time: 2020/2/14 14:21 @software: PyCharm ''' ...

  5. python-判断、循环、列表、字典

    一.如何将两个列表合并成一个字典 运用dict(zip()) 例如: usernames = ['xiaohei', 'xiaobai', 'xiaoming'] passwords = ['1234 ...

  6. while循环处理列表和字典

    一.在列表之间移动元素 假设有一个列表,里面存放的是网站新注册但没有验证的用户,验证这些用户后,如何将它们移动到另一个已验证用户列表中呢? 其中一种方法是使用while循环,在验证用户的同时,将其从未 ...

  7. Python【第二课】 字符串,列表,字典,集合,文件操作

    本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或&quo ...

  8. join,列表和字典用for循环的删除,集合,深浅拷贝

    1.join() 将列表转换成字符串,并且每个字符之间用另一个字符连接起来,join后面必须是可迭代的对象(字符串,列表,元组,字典,集合),数字不能迭代 例如: s = ['a','b','c'] ...

  9. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

随机推荐

  1. python 日期 & 时间

    1. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 2. 时间间隔是以秒为单位的浮点小数. 3. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长 ...

  2. Java数据类型及运算

    (一),Java基本类型及运算 注释:可以用于生成API: 命令如:javadoc -d apidoc windowtitle hhh -doctitle aaa  -header bbbb -ver ...

  3. Linux--谈父子进程执行过程

    fork函数用于从已存在进程中创建一个新进程,新进程成为子进程,原进程成为父进程.这两个进程分别返回他们各自的返回值, 其中父进程的返回值是子进程的进程号,子进程则返回0,因此返回值大于0标识父进程, ...

  4. JAVA Struts2 搭建

    java  struts 2搭建 1.web工程 2.将struts2 用到的jar包,拷贝到webcontent/webinf/lib文件夹.下 3.webcontent  下的web.xml  下 ...

  5. Java设置Excel单元格式

    XSSFWorkbook wb = new XSSFWorkbook(); CellStyle style = wb.createCellStyle(); style.setBorderRight(C ...

  6. git 分支的创建与提交

    我们在开发的过程中会遇到很多团队协作的问题,怎么来解决团队合作呢,就是靠分支来管理代码.一般来说一个功能就要创建一个分支,这样才能减少代码的冲突,给开发带来很大的方便. 首先需要克隆代码 git cl ...

  7. VueJS 组件参数名命名方式和前台显示

    camelCase(驼峰式) 和. kebab-case(短横线式) HTML 特性是不区分大小写的.所以,当使用的不是字符串模版,camelCased (驼峰式) 命名的 prop 需要转换为相对应 ...

  8. Linux IO barrier

    I/O顺序问题是一个比较综合的问题,它涉及的层次比较多,从VFS page cache到I/O调度算法,从IO子系统到存储外设.而Linux I/O barrier就是其中重要的一部分. 可能很多人认 ...

  9. 蓝桥杯- 移动距离-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  10. 基于jQuery的自定义插件:实现整屏分页转换的功能

    动态创建jQuery插件 一.实现功能: 1.基本功能:自适应式整屏分页功能的实现 2.通过鼠标点击标签页转换分页,支持键盘上下左右键的转换分页,同样支持 鼠标滚轮上下滑动转换分页 3.切屏时的动画效 ...