​

​编辑

列表和元组

list 是一种有序、可变的数据类型,可添加删除其中的元素。

len()函数:可以获取列表元素的个数

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
print(len(classmates))

Terminal:        ​编辑

用索引来读取列表里的元素,从0开始,最后一个可以用-1或len(classmates)-1表示

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates[0])
print(classmates[-1])
print(classmates[len(classmates)-1])

Terminal:        ​编辑

倒数第二位可以用-2表示,以此类推。索引超出范围会报错

append()函数:列表末尾加元素

insert()函数:在列表指定位置添加元素

pop()函数:删除列表指定位置元素,括号空默认删除最后一个元素

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
classmates.append('Lebron')
print(classmates)
classmates.insert(1,'Jordan')
print(classmates)
classmates.pop()
print(classmates)
classmates.pop(1)
print(classmates)

Terminal:        ​编辑

列表中的某个元素换成其他,可以直接赋值给对应的索引位置

classmates = ['Micheal' , 'Bob' , 'James']
classmates[1]='Jordan'
print(classmates)

Terminal:        ​编辑

列表中的元素数据类型可以不同,列表也可以作为另一个列表的元素

L = ['Apple', 123, True]
S=['php','html']
L.insert(1,S)
print(L)
print(len(L))
print(L[1][0])

Terminal:        ​编辑

tuple:元组,是一种有序列表

tuple和list相似,但是tuple一旦初始化就不可以修改,也不可以使用上面的添加、删除函数,但可以通过索引地址正常读取

classmates = ('Michael', 'Bob', 'Tracy')
print(classmates[0])
print(classmates[-1])

Terminal:        ​编辑

因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple

tuple的陷阱:当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来

定义一个空的tuple  写成:t = ()

定义一个元素的tuple    写成:t = (1) ×

这样定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:

如: t = (1, )

Python在显示只有1个元素的tuple时,也会加一个逗号,以免你误解成数学计算意义上的括号。

当tuple中的一个元素是列表时,可以改变列表里的元素

t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'
t[2][1] = 'Y'
print(t)

Terminal:        ​编辑

tuple的不变指的是元素指向永远不变,上面指向的列表一直都是相同的列表,改变的是列表里的元素。

条件判断

age = 3
if age >= 18:
print('your age is', age)
print('adult')
else:
print('your age is', age)
print('teenager')

Terminal:        ​编辑

elif是else if的缩写,完全可以有多个elif

age = 3
if age >= 18:
print('adult')
elif age >= 6:
print('teenager')
else:
print('kid')

Terminal:        ​编辑

if x:
print('True')

只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False

​编辑

​

跟着廖雪峰学python 003的更多相关文章

  1. 跟着老王学Python

    亲爱的朋友:     欢迎你!很高兴能在这里见到你,你能来到这里说明你真的很喜欢python,很想把python给学好!我觉的你很幸运,开始我学python的时候比较少资料,学起来也比较头疼,现在随着 ...

  2. 廖雪峰老师Python教程读后笔记

    廖老师网站:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 花几天时间看了廖老师的 ...

  3. 跟着高淇学Python——第一到第三章总结

    2019/10/26 第一章:Python介绍 Python是一种解释型,面向对象的语言.特点是: 可读性强 简洁,简洁 面向对象 免费开源 可移植性和跨平台性 丰富的库 可扩展性 应用范围:1.人工 ...

  4. 进程 vs. 线程(python的协程)(转廖雪峰老师python教程)

    我们介绍了多进程和多线程,这是实现多任务最常用的两种方式.现在,我们来讨论一下这两种方式的优缺点. 首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Work ...

  5. python 协程(单线程中的异步调用)(转廖雪峰老师python教程)

    协程,又称微线程,纤程.英文名Coroutine. 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用. 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在 ...

  6. 【廖雪峰老师python教程】——进程与线程

    多进程 操作系统轮流让各个任务交替执行,任务1执行0.01秒,切换到任务2,任务2执行0.01秒,再切换到任务3,执行0.01秒……这样反复执行下去.表面上看,每个任务都是交替执行的,但是,由于CPU ...

  7. 【廖雪峰老师python教程】——IO编程

    同步IO 异步IO 最常见的IO——读写文件 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一 ...

  8. 【廖雪峰老师python教程】——错误和调试

    错误处理 try...except...finally...机制 try: print('try...') r = 10 / 0 print('result:', r) except ZeroDivi ...

  9. 【廖雪峰老师python教程】——OOP

    概述 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 数据封装.继承和多态 ...

  10. 【廖雪峰老师python教程】——模块

    使用模块 任何模块代码的第一个字符串都被视为模块的文档注释: 使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名: 当我们在命令行运行模块文件时,Python解释器把 ...

随机推荐

  1. 记一次多个Java Agent同时使用的类增强冲突问题及分析

    摘要:Java Agent技术常被用于加载class文件之前进行拦截并修改字节码,以实现对Java应用的无侵入式增强. 本文分享自华为云社区<记一次多个JavaAgent同时使用的类增强冲突问题 ...

  2. C++期末考试题库

    哈尔滨商业大学计算机专业C++期末考试题库 下载:题库 示例: 一.单选题:1.能作为 C ++程序的基本单位是( C )A .字符 B .语句 C .函数 D .源程序文件2.程序中主函数的名字为( ...

  3. layui文件上传+ThinkPHP

    1.前端html代码 <div class="layui-form-item"> <label class="layui-form-label" ...

  4. Idea中Git的常用操作及可能存在的问题

    一.使用 1.从git上下载项目 (1)默认branch下载(pull) (2)指定branch下载 (3)克隆远程仓库到本地(git clone) git clone https://github. ...

  5. 【Shell案例】【awk map计数&sort按指定列排序】9、统计每个单词出现的个数

    描述写一个 bash脚本以统计一个文本文件 nowcoder.txt 中每个单词出现的个数. 为了简单起见,你可以假设:nowcoder.txt只包括小写字母和空格.每个单词只由小写字母组成.单词间由 ...

  6. 【Spark】Day01-入门、模块组成、4种运行模式详解及配置、案例实操(spark分析过程)

    一.概述 1.概念 基于内存的大数据分析计算引擎 2.特点 快速.通用.可融合性 3.Spark内置模块[腾讯8000台spark集群] Spark运行在集群管理器(Cluster Manager)上 ...

  7. 【每日一题】【DFS】【BFS】【队列】2021年12月5日-199. 二叉树的右视图

    解答: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * ...

  8. bug处理记录:Error running 'WorkflowApplication': Command line is too long. Shorten command line for WorkflowApplication or also for Spring Boot default configuration?

    1.报错信息 Error running 'WorkflowApplication': Command line is too long. Shorten command line for Workf ...

  9. mouseMove模拟拖拽,封装指令

    最近项目里常常使用拖拽改变元素位置或者大小的需求,cv法文件找的脑阔疼,索性试试写一个指令. 说起指令,提一嘴,vue3没有了根元素唯一的限制后,仿佛指令绑定在组件上就不能生效了. import ty ...

  10. Python开发Brup插件检测SSRF漏洞和URL跳转

    作者:馒头,博客地址:https://www.cnblogs.com/mantou0/ 出身: 作为一名安全人员,工具的使用是必不可少的,有时候开发一些自己用的小工具在渗透时能事半功倍.在平常的渗透测 ...