一列表
Python 内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。 []
list = [[]] : 二维列表。

语法以及定义方式:
a = [] : []------方括号表示集合;【】[]

len(classmates)-1: 表示列表当中最后一个元素的索引。
L[3] = L[len(classmates)-1]
#超出列表索引会报错 eg: classmate[4]报错,超出索引
#IndexError: list index out of range
添加元素方法
append() : 在列表最后插入元素 (一个参数)
insert():在指定索引处,插入元素。(两个参数)
classmates = [‘张三’, ‘李四’, ‘王五’,‘小明’]
print(len(classmates))
#classmates的长度是多少?
#超出列表索引会报错
#IndexError: list index out of range
#如何将 '小红’加入当classmates这个列表当中
classmates.append(‘小红’)
# append(): 向列表当中添加元素。列表当中的方法,用’.'点,调用。
#append():添加的元素是在列表的最后。
# 如何添加到列表的指定位置,eg:添加到第一个位置
classmates.append(0,‘小白’)
#TypeError: append() takes exactly one argument (2 given)
#append(): 只能接受一个参数,我们给了它两个参数,所以会报错
classmates.insert(0,‘小白’)
# insert():在指定索引处,插入元素。
删除元素:
#pop() :删除列表当中最后一个元素
#pop(index): 删除指定索引的元素
classmates = [‘张三’, ‘李四’, ‘王五’,‘小明’]
print(classmates)
#删除元素
classmates.pop()
print(classmates)
classmates.pop(1)
print(classmates)

列表内置方法
pop() :删除列表当中最后一个元素
pop(index): 删除指定索引的元素
append(value) : 在列表最后插入元素 (一个参数)
insert(index,value):在指定索引处,插入元素。(两个参数)
列表插入删除练习
fruit = [‘苹果’,’香蕉’,’橘子’]
1.添加 ‘西瓜’到fruit列表的最后,打印输出fruit
2.添加 ‘草莓’到苹果的后面,打印输出fruit
3.删除 fruit列表的最后一个元素,然后打印输出fruit
4.删除 fruit列表的第2个元素,然后打印输出fruit
5.打印输出 ‘橘子’
答案:
1.fruit.append(‘西瓜’)
2.fruit.insert(1,‘草莓’)
3.fruit.pop()
4.fruit.pop(2)
5.print(fruit[2])

列表:
list = [1,2,3,True,’小明’,None,3.124, [] ]
二维列表:

练习:
1.请用索引取出下面list的指定元素:
# -- coding: utf-8 --

L = [
[‘Apple’, ‘Google’, ‘Microsoft’],
[‘Java’, ‘Python’, ‘Ruby’, ‘PHP’],
[‘Adam’, ‘Bart’, ‘Lisa’]
]

# 打印Apple:
print(?) L[0][0]
# 打印Python: L[1][1]
print(?)
PHP: L[1][3]
# 打印Lisa:
print(?)

二循环
如果全篇(就是python代码)没有缩进“tab”,那说明没有for while if else eilf等条件
首先

如果list里面有100这样的元素怎么办??
list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
range(N)--------生成0-N个元素组成的列表。 [0,N) ,左闭右开
range(m,n) ------生成m-n个元素组成的列表
range(0,100,2) -----在[0-99)中,以step=2的间隔生成元素,组成列表。


python2版本才可以测试:
循环:Python 的循环有两种,一种是 for…in 循环,依次把 list 或 tuple 中的每个元素迭代出来

for循环语法:

for 迭代变量 in 对象(序列)
循环体

流程图:

循环去做:
计算 1-10的整数之和

sum = 0
for i in range(0, 11):
sum += i
print(“sum=”, sum)

‘’’
解释:
sum = 0+1 -----> sum=1
sum = 1+2 ------> sum = 3
sum = 3+3 -----> sum =6

sum = sum+10 -----> sum=55
计算机当中: sum= sum+i
一般写成 sum+=i
‘’’
计算1-100的整数之和。
sum = 0
for i in range(1, 101):
sum += i
print(“sum=”, sum)

计算1-100的偶数之和。
sum = 0
for i in range(0, 101,2):
sum += i
print(“sum=”, sum)

计算1-100的奇数之和。
sum = 0
for i in range(1, 101,2):
sum += i
print(“sum=”, sum)
练习
请利用循环依次对list中的每个名字打印出Hello, xxx!:

L = [‘Bart’, ‘Lisa’, ‘Adam’]
for i in L:
print(‘Hello,’,i,"!")

while 循环:

语法:

while 条件表达式:
循环体


第二种循环是 while 循环,只要条件满足,就不断循环,条件不满足时退出循环。比如我们
要计算 100 以内所有奇数之和,可以用 while 循环实现:

计算 100 以内所有奇数之和
在循环内部变量 n 不断自减,直到变为-1 时,不再满足 while 条件,循环退出。

continue语句会立即跳到循环的顶端,即跳过本次循环,执行下一次循环

break 语句会立即离开循环
练习:

  1. 输入5个同学的name,weight,height.请根据BMI公式(体重除以身高的平方)分别求出他们的BMI指数,并根据BMI指数:
    低于18.5:过轻
    18.5-25:正常
    25-28:过重
    28-32:肥胖
    高于32:严重肥胖

2.猜数字;
编写一个猜数字的小游戏,随机生成一个1-10(包括1和10)之间的数字作为基准数,玩家每次通过键盘输入一个数字,如果输入的数字和基准数相同,则成功过关,否则重新输入,如果玩家输入-1,则表示退出游戏。效果图如下:

提示:
import random # 导入随机数模块
random = random.randint(1, 10) # 生成1到10之间的随机数
1.需要随机生成一个(1,10)的数字
2.需要用户输入一个数字
3.需要条件控制语句,循环控制语句。

3.打印输出(循环):
(1)
*
**
***
****
*****

提示: \n ----表示换行 ‘ ’-----表示输出空格
(2)
*
**
***
****
*****
三 字典
# userName = [“1111”,“zhangsan”,“lisi”,“wangwu”,“xiaoming”]
# for i in userName: #
# if “zhangsan” ==i: # i ==“zhangsan”
# break;
# print(i)
** 大家给我记住了: 缩进符号很重要,
**
1.如果全篇(就是python代码)没有缩进“tab”,那说明没有for while if
else eilf 等条件(流程)控制语句和循环控制语句。

‘’’

# print("-------猜数字游戏-------")
# import random      # 导入随机数模块
# random = random.randint(1, 10)  # 生成1到10之间的随机数
# print("random:",random)
# num = int(input("请输入1-10之间的任意一个数:"))# while True:
#     num = int(input("请输入1-10之间的任意一个数:"))
#     if num >random:
#         print("大了,请重新输入:")
#     elif num <random and num !=-1:
#         print("小了,请重新输入:")
#     elif num == -1:
#         print("游戏结束")
#         break
#     else:
#         print("猜对了")
#         break# for i in range(5):
#     print(" "*(5-i),"*"*(i+1))

#定义好字典 {键:值,键:值}键:值,以逗号分隔
d = {“zhangsan”: 89, “lisi”: 90, “wangwu”: 78}
print(d)
print(d[“zhangsan”]) # 取字典里面的某个值
#改变字典当中的值
#方式一
d[“zhangsan”]=99
print(d[“zhangsan”])
#如果键不存在于字典当中会报错。
# d[“xiaoming”]
# KeyError: ‘xiaoming’

#判断键是否存在于字典当中
print("----:",d.get(“lisi1”))

#删除字典当中的wangwu元素
d.pop(“wangwu”)
print(d)

# 一行一行的输出字典当中的键值

print(d[“zhangsan”])
print(d[“zhangsan”])
print(d[“lisi”])

# 循环打印字典

d1 = {“zhangsan”: 89, “lisi”: 90, “wangwu”: 78}
for i in d1: # i 表示的是字典当中的键, d[i]—字典当中的值
print("—",i,d1[i])

# 总结,和list相比,dict的优缺点

‘’’
1.查找和插入的速度快,不会随着key的增加而增加
2.需要占用大量内存,内存浪费
‘’’
# list 优缺点
‘’’
1.查找和插入的时间,随着元素的增加而增加
2.占用空间小,浪费内存小。
‘’’
#dict的注意事项
‘’’
字典当中的key是不可变对象,唯一,不能重复
通过key计算位置的算法(字典),我们称为: 哈希算法
‘’’

# a = {1:"asd",1:"qwe"}
# print(a)

dic1 = {“zhangsan”:[180,87,98]}
#如何取87
l = dic1[“zhangsan”]
l[1]
print(dic1[“zhangsan”][1])

dic2 = {‘lisi’:{“爱好”:[1,2,3],“score”:98}}
#如何取3
a = dic2[‘lisi’][“爱好”][2]
print(a)

1_11_4 23 python基础学习相关推荐

  1. 【Python基础学习】基本数据结构:列表、元组、栈、字典、集合与队列

    [Python基础学习]基本数据结构:列表.元组.栈.字典.集合与队列 Python的基本数据结构中,包含了列表.元组等一系列数组式数据结构,但各个结构各有不同.因此单独列出来,分析相同与不同 列表( ...

  2. 8.Python基础学习笔记day8-正则表达式、网络编程、进程与线程

    8.Python基础学习笔记day8-正则表达式.网络编程.进程与线程 一.正则表达式 ''' 1. [1,2,3,4]中任意取3个元素排列: A43 = 4x3x2 = 24itertools.pe ...

  3. python自学用什么书好-适合python基础学习的好书籍

    分享几本python基础学习的书籍给大家 <Python编程:从入门到实践> 内容简介:本书是一本针对所有层次的Python 读者而作的Python 入门书.全书分两部分:第一部分介绍用P ...

  4. python心得体会-终于懂得python基础学习心得

    为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...

  5. python开发需要掌握哪些知识-Python基础学习需要掌握哪些知识

    1.1Python的对象 python的内置对象类型有很多,包括数字,字符串,列表,集合,元组,字典等等,在Python中,一切皆对象 pickle腌制--在Python中,如果有一些对象需要持久性存 ...

  6. Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho

    Python基础学习-Python中最常见括号().[].{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho ...

  7. python基础学习_转行零基础该如何学习python?很庆幸,三年前的我选对了

    这似乎是一个如荼如火的行业,对于一直在思考着转行的我,提供了一个不错的方向. 这个行业当然就是python程序员,真正开始决定转行是在24岁的时候,到现在已经有三年多了,我从零开始,每天用业余两个小时 ...

  8. Python基础学习笔记三

    Python基础学习笔记三 print和import print可以用,分割变量来输出 import copy import copy as co from copy import deepcopy ...

  9. Python基础学习笔记之(二)

    Python基础学习笔记之(二) zouxy09@qq.com http://blog.csdn.net/zouxy09 六.包与模块 1.模块module Python中每一个.py脚本定义一个模块 ...

最新文章

  1. php agi api,PHP agi 编写测试
  2. AI 生成的代码可信吗?编写的代码有 Bug 吗?
  3. 如何为linux服务器配置DNS解析?
  4. Windows Vista即将发布SP1
  5. MySQL5.7安装步骤
  6. axure 调整中继器列宽_在Axure中用“中继器”实现对表格的增、删、改
  7. cubemx lan8720模块_通过STM32cubeMX将STM32F767+LAN8720+LwIP+FreeRTOS的以太网实现
  8. 微服务架构设计模式~根据业务能力进行服务拆分
  9. linux设备驱动编写基础
  10. Spring Boot Test 进行JPA 测试保存数据到数据库
  11. 嵌入式系统——面向对象的设计原则
  12. Web安全之SQL注入攻击技巧与防范
  13. 迅捷新版PDF转换器
  14. oracle10g--使用expdp导出数据和impdp导入数据
  15. 笔记本有线及无线的MAC地址修改
  16. stm32关于can线的双机通信实验
  17. 贪吃蛇项目Java实现
  18. 目前住院病人需要护士护理,这样做不仅需要大量护士,而且由于不能随时观察病人情况,还可能会延误抢救时即。某医院呢打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并分析开发这个系统的可行性
  19. 移动支付模式再添新军:指纹支付
  20. java 双向链表排序_数据结构之(2)JAVA实现双向链表

热门文章

  1. 为什么1KB=1024B,而不等于1000B?
  2. 第三单元 :资本成本笔记
  3. python连接sap接口_基于Python的SAP流程自动化
  4. 利用NCBIdatasets批量下载大规模生信数据集
  5. 通过 blast 结果查看 测序数据fastq是否被污染,以及污染reads所属物种、所占比例
  6. 必看五大安全趋势 Fortinet全球威胁态势报告发布
  7. 叶聪:朋友圈背后的计算机视觉技术与应用 1
  8. 利用α-β搜索的博弈树算法编写一字棋游戏 python
  9. 关闭 centos7 的滴滴声
  10. PDF转图片再转长图、python、pil