li=[1,2,33,-1,'dbssd',[4,5,6],{4:'rfw',5:'re'}]
del(li[1])
print(li)
print(type(li))
#访问元素
print(li[0])
print(li[-2])
print(li[-1])
#查找元素的位置
i=0
for teli in li:
if teli == 33:
print('元素中找到了%s' %i)
i+=1
print(li.index(33))
#从数组中找到两个数等于目标数的值
print('-------------------------------')
def two_sum(numbers,target):
#range 表示从0开始
for i in range(len(numbers)-1):
for j in range(i+1,len(numbers)):
if numbers[i] + numbers[j] == target:
return i,j
return -1,-1
#默认返回tuple
print(two_sum([2,44,3,21,17,8],20)) #字典 dict key-value 无序的
print('-------------dict------------------')
te_di={1:2,'ed':54,'8e':'tr',7:[8,1,10,0]}
print(type(teli))
print(te_di)
print(te_di['ed'])
#判断key是否存在 在dict内部已经对key做了索引 时间复杂度需要学习?
print(7 in te_di)
print(8 in te_di)
#遍历 级联元素
for key,value in te_di.items():
print(key,value)
ddi=te_di.keys()
print(type(ddi))
print(ddi)
#set 元素没有重复的集合  没有下标的概念
sa=set([1,2,3,4,5,5,60,11,0,32])
sb=set([43,22,32])
print(sa)
#并集
print(sa|sb)
print(sa.union(sb))
#交集
print(sa&sb)
print(sa.intersection(sb))
#差集 sa - sa&sb
print(sa-sb)
print(sa.difference(sb))
print(sb.difference(sa))
#对称差 sa|sb - sa&sb
print(sa.symmetric_difference(sb))
#修改元素
print('---------------')
sb.add(600)
print(sb)
sb.update([44,55,6,77])
print(sb)
sb.remove(600)
print(sb)
#切片生成一个新的对象
print('------切片---------')
qp=list(range(10))
print(qp[::-1])
print(qp[4:8]) #快速推导
print('------快速推导---------')
kstd=[]
for i in range(10):
if i%3 == 0:
kstd.append(i)
print(kstd)
kstd=[1]*10
print(kstd)
kstd=[i*3 for i in range(30)]
print(kstd)
#浅拷贝 一维是赋值操作
kstd=[[0]*3]*3
print(kstd)
kstd[0][0]=100
print(kstd)
#深拷贝
kstd=[[0]*3 for i in range(3)]
print(kstd)
kstd[0][0]=100
print(kstd)
kstd={x for x in range(10) if x%2==0}
print(type(kstd))
print(kstd)
kstd={x: x%2==0 for x in range(10) if x%2==0}
print(type(kstd))
print(kstd)
#生成器是把真正的运算到使用的过程中
print('------生成器---------')
square_t=[]
for i in range(1000):
square_t.append(i*i)
for i in range(10):
print(square_t[i])
square_t=(x*x for x in range(1000))
print(square_t)
for i in range(10):
print(next(square_t))
def fib(limit):
n,a,b = 0,0,1
while n<limit:
yield b
a,b = b,a+b
n+=1
return 'done'
import traceback
f=fib(5)
print(type(f))
print(next(f))
print(next(f))
print(next(f))
print(next(f))
try:
print(next(f))
except StopAsyncIteration:
traceback.print_exc()
#迭代器
from collections import Iterable
from collections import Iterator print('------迭代器---------')
print(isinstance([1,2,3],Iterable))
print(isinstance({},Iterable))
print('------对象---------')
class Student:
def __init__(self,name,age):
self.__name=name
self.__age=age
def detail(self):
print(self.__name)
print(self.__age)
stdu=Student('张三',20)
stdu.name='李四'
stdu.detail()
#继承
class Car:
def __init__(self,wheel,circle):
self.wheel=wheel
self.circle=circle
def detail(self):
print(self.wheel)
print(self.circle)
class BaoMa(Car):
def moreMoney(self):
print('很贵的车')
bao=BaoMa('四个轮子','一个方向盘')
bao.detail()
bao.moreMoney() #多继承 广度优先
class F1:
pass
class F2(F1):
def show(self):
print('XXX 执行')
class F3:
def show(self):
print('F3 F3 F3')
def func(obj):
obj.show()
print(type(F2))
ff2=F2()
ff3=F3()
func(ff2)
func(ff3)
dir('AFC') 训练算法

python基础学习第五天的更多相关文章

  1. python基础学习(五)while循环语句

    while循环基本使用 循环的作用就是让指定的代码重复的执行 while循环最常用的应用场景就是让执行的代码按照指定的次数重复执行 流程图 基本语法 初始条件设置 —— 通常是重复执行的 计数器 wh ...

  2. Python基础学习(五)

    一.使用模块 已经了解了什么是模块,模块就是一个个文件的体,我们可以做不同的文件中引入各个模块文件,当然如果模块有冲突,还可以给模块文件的上层建立一个目录简称包,包名只能唯一,不能重名. 另外,一旦建 ...

  3. Python基础学习总结(五)

    7.用户输入输出和while循环 1.使用函数 input() 输入,print() 打印,字符串可以用逗号隔开.end=' ' 关键字参数,打印时可以不换行,sep=‘ 你想要的分隔符 ’,关键字参 ...

  4. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  5. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  6. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  7. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  8. python基础教程项目五之虚拟茶话会

    python基础教程项目五之虚拟茶话会 几乎在学习.使用任何一种编程语言的时候,关于socket的练习从来都不会少,尤其是会写一些局域网的通信的东西.所以书上的这个项目刚好可以练习一下socket编程 ...

  9. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

随机推荐

  1. hash table (youtube 2)

    https://www.youtube.com/watch?v=jEdaduyLLqY

  2. websocket学习和群聊实现

    WebSocket协议可以实现前后端全双工通信,从而取代浪费资源的长轮询.在此协议的基础上,可以实现前后端数据.多端数据,真正的实时响应.在学习WebSocket的过程中,实现了一个简化版群聊,过程和 ...

  3. node 链接mysql(自动链接)

    Node.js与MySQL交互操作有很多库 felixge/node-mysql 常用 cnpm i mysql --save dev 1.打开mysql 必须要有,我这里面用的是wamp.可视化用的 ...

  4. wepy里面两种不同的写回调函数的方法

    方案一const getHelpCenter = createAction(GET_HELP_CENTER, () => request('api/hisense/article/menu/li ...

  5. Android Studio 通过一个登录功能介绍SQLite数据库的使用

    前言: SQLite简介:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在 ...

  6. 【Java入门提高篇】Day34 Java容器类详解(十五)WeakHashMap详解

    源码详解系列均基于JDK8进行解析 说明 在Java容器详解系列文章的最后,介绍一个相对特殊的成员:WeakHashMap,从名字可以看出它是一个 Map.它的使用上跟HashMap并没有什么区别,所 ...

  7. (网页)12种不宜使用的Javascript语法(转)

    转自阮一峰: 最近写的一些小东西,总是出各种各样的问题,用了angular.js反应居然比我的jQuery还慢,客户吐槽了,我又把一个小操作,改成了jQuery.浏览一下大神的的博客.转载一点东西: ...

  8. (网页)Http状态码大全(200、404、500等)(转CSDN)

    当我们从客户端向服务器发送请求时 服务器向我们返回状态码 状态码就是告诉我们服务器响应的状态 通过它,我们就可以知道当前请求是成功了还是出现了什么问题 状态码是由3位数字和原因短语组成的(比如最常见的 ...

  9. OneAPM大讲堂 | 基于图像质量分析的摄像头监控系统的实现

    今天咱们要介绍的技术很简单,请看场景: 你在家里安装了几个摄像头想监视你家喵星人的一举一动,然而,就在喵星人准备对你的新包发动攻击的时候,图像突然模糊了.毕竟图像模糊了以后你就没法截图回家和喵当面对质 ...

  10. BD是什么角色

    BD是什么角色? 在一般创业公司里面,有了产品接下来就是运营了,而运营中很重要的一点就是BD,也就是所谓商务拓展了,俗一点说就是生意的合作拓展 https://www.jianshu.com/p/7d ...