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. Web前端基础——jQuery(一)

    前几天回老家呆了几天,几乎没有怎么学习新的知识,这期间一直有断断续续的看<Java编程思想>,还刷了一些前沿消息,也算没闲着.今天开始学习jQuery啦,继续前进. 在网上查了,买了这本书 ...

  2. HTML暗黑料理之a标签执行请求不跳转页面

    不是被逼无奈不建议用这HTML暗黑料理. <iframe id="></iframe> <a class="large green button&qu ...

  3. canvas-2rect.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. MVCmoduleExample.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 【代码笔记】Web-HTML-颜色

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  6. web全栈架构师[笔记] — 02 数据交互

    数据交互 一.http协议 基本特点 1.无状态的协议 2.连接过程:发送连接请求.响应接受.发送请求 3.消息分两块:头.体 http和https 二.form 基本属性 action——提交到哪儿 ...

  7. SQLite 知识摘要 --- 事务

    在许多时候,我们在使用大数据的时候会发现,尽管sqlite数据库的执行效率已经很快了,但是还是满足不了我们的需求,这时候我们会很容易考虑到使用并发的方式去访问sqlite数据库,但是sqlite数据独 ...

  8. Linux 学习笔记之超详细基础linux命令 Part 5

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 4----------------- ...

  9. springboot 学习之路 20 (整合RabbitMQ)

    整合RabbitMQ: 我的操作系统是window7 ,所以在整合ribbotMQ之前需要先安装rabbitMq服务:安装步骤请参考:window下安装RabbitMQ  这个详细介绍了安装步骤,请按 ...

  10. JS列表

    promise 引用类型/值类型 ----- 对比python可变对象/不可变对象 原型继承