python中的“坑”—持续更新
1.判断是否是回文
def is_back(s):
return s[::-]==(s if s.strip() else False)
print(is_back('上海自来水来自海上'))
print(is_back('山东落花生花落东山'))
print(is_back('山西悬空寺空悬西山'))
print(is_back('随随便便写的'))
2.看下面这段代码, 具体是什么意思呢
nums=[1,1,1,2,2,3,4,5,6,6,7,8]
for n in nums:
if n%2==0:
nums.remove(n)
print(nums)
如果光看这段代码觉得print出来的结果应该是把除2余0的数删除,name结果应该是1,1,1,3,5,7,8,但运行结果如下:
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /Users/panyang/PycharmProjects/untitled/day9/111.py
[1, 1, 1, 2, 3, 5, 6, 7] Process finished with exit code 0
好像和我们想象的并不一样,这是什么原因呢,因为在删除数组元素的过程中数组元素的下标也改变了,取完下标为3的之后下一个元素的下表变成了3,所以下标就不准了.删除的元素也就不准了.
所以循环列表的时候不要删元素,如果还是想删就用深拷贝,实现代码如下:
import copy
nums=[1,1,1,2,2,3,4,5,6,6,7,8]
new_nums=copy.deepcopy(nums)
for n in new_nums:
if n%2==0:
nums.remove(n)
print(new_nums)
print(nums)
显示的结果如下:
D:\python\python.exe E:/Users/panyang/PycharmProjects/practice/day9/联系.py
[1, 1, 1, 2, 2, 3, 4, 5, 6, 6, 7, 8]
[1, 1, 1, 3, 5, 7] Process finished with exit code 0
python中的“坑”—持续更新的更多相关文章
- python中魔法方法(持续更新)
1.对于一个自定义的类,如果实现了 __call__ 方法,那么该类的实例对象的行为就是一个函数,是一个可以被调用(callable)的对象.例如: class Add: def __init__(s ...
- 移动端H5制作安卓和IOS的坑 持续更新...
移动端H5制作安卓和IOS的坑 持续更新... 前言:最近参加公司的H5页面创意竞赛,又遇到不少页面在不同系统上的坑.踩坑之余,觉得很多之前遇到的知识点都忘了,索性开一篇博文,把这些坑都统一归纳起来, ...
- Python中elasticsearch插入和更新数据的实现方法
Python中elasticsearch插入和更新数据的实现方法 这篇文章主要介绍了Python中elasticsearch插入和更新数据的实现方法,需要的朋友可以参考下 首先,我的索引结构是酱紫的. ...
- 2020企业python真面试题持续更新中
目录 1.软件的生命周期 2.如何知道一个python对象的类型 3.简述Django的设计模式MVC,以及你对各层的理解和用途 4.什么是lambda函数,说明其使用场景 5.python是否支持函 ...
- Python基础学习总结(持续更新)
https://www.cnblogs.com/jin-xin/articles/7459977.html 嗯,学完一天,白天上班,眼睛要瞎了= = DAY1 1,计算机基础. CPU:相当于人的大脑 ...
- python 系列文章汇总(持续更新...)
引言 不知不觉已经写了好几篇 python 相关的随笔了,从刚开始的门外汉到现在已经对 python 有一些入门了,时间也已经过去了一个多月. 写博客真是好处多多,不仅能提供整理自己学习的知识点,梳理 ...
- Python 基础知识 (1) 持续更新
(1)数字和表达式 当进入Python交互式的时候,Python就可以直接当成计算机使用 如 >>> 2 + 2 4 但是 当 1个整数 和 另外一个整数 相除的时候,计算的结果,只 ...
- 一些实验中用过的python函数/方法(持续更新)
衡量运行时间 很多时候你需要计算某段代码执行所需的时间,可以使用 time 模块来实现这个功能. import time startTime = time.time() # write your co ...
- 微信小程序的坑(持续更新中)
参与微信小程序开发有一段时间了,先后完成信息查询类和交易类的两个不同性质的小程序产品的开发:期间遇到各种各样的小程序开发的坑,有的是小程序基础功能不断改进完善而需要业务持续的适配,有的是小程序使用上的 ...
随机推荐
- 502 IPO 上市
详见:https://leetcode.com/problems/ipo/description/ C++: class Solution { public: int findMaximizedCap ...
- STM32HAL库学习之前言
HAL库:HAL 的全称是: Hardware Abstraction Layer (硬件抽象层) ,是ST最新推荐的库.包括基本库和扩展库(功能外展):三种编程模型(轮询.中断和 DMA) 灵活的回 ...
- Suricata的输出
不多说,直接上干货! 见官网 https://suricata.readthedocs.io/en/latest/output/index.html 总的来说,Suricata采集下来的数据输出分为: ...
- 极其强大的运维工具——pscp、pssh、pslurp
1.pscp 用于将本地文件复制到远程主机 pscp -h xxx.host 本地文件 远程目录 //xxx.host是所有目的IP的文件,一个IP一行 2.pssh 在远程机器上执行命令 pssh ...
- [转]ASP.NET MVC URL重写与优化(进阶篇)-继承RouteBase玩转URL
本文转自:http://www.cnblogs.com/John-Connor/archive/2012/05/03/2478821.html 引言-- 在初级篇中,我们介绍了如何利用基于ASP.NE ...
- JS进阶-特殊形式的函数-内部私有函数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- requirejs&&springboot
1.Spring Boot Spring boot 基础结构主要有三个文件夹: (1)src/main/java 程序开发以及主程序入口 (2)src/main/resources 配置文件 (3) ...
- Web前端开发的四个阶段(小白必看)
第一阶段:HTML的学习 超文本标记语言(HyperText Mark-up Language 简称HTML)是一个网页的骨架,无论是静态网页还是动态网页,最终返回到浏览器端的都是HTML代码,浏览器 ...
- windows 下防火墙安全加固,配置规则
netsh advfirewall firewall: 显示关于防火墙操作的常见命令的帮助信息 netsh advfirewall firewall show rule name=all dir=in ...
- 备忘录:python 3在class中使用yield
之前代码都是直接在函数级别使用yield,但封装class后如何使用yield很少遇到. 经过半天的学习,总算完成示例.代码没有什么特殊地方,仅仅作为一个工作项. 与生成器合作: ########## ...