Python学习笔记

1 快速入门

下载安装好Python之后,在开始找到

双击打开一个窗口,这是一个shell界面编辑窗口,点击左上角的file——new file新建一个窗口,这里可以输入完整的代码。

 先从一个程序开始(严格按照如下格式打在第二个窗口new file里)

如下所示:

输入ctrl +S保存为odd.py文件(必须以.py结尾)然后按F5执行,如果出现错误一定是格式有错,Python对缩进要求很严格。

执行结果为:

下面解释一下这个程序:

datetime是取出当前系统的时间,Python的标准库非常丰富,提供了大量可重用代码。

odds = [ 1,  3,  5,  7,  9,  11, 13, 15, 17, 19,

            21, 23, 25, 27, 29, 31, 33, 35, 37, 39,

            41, 43, 45, 47, 49, 51, 53, 55, 57, 58 ]  这是一名为odds的个奇数列表,用【】包围。

right_this_minute = datetime.today().minute   这里调用了datetime标准库中的today函数,然后取出分钟值。赋给一个变量right_this_minute

if right_this_minute in odds:    in能确定一个对象是不是在另一个对象里。

    print("this minute seems a little odd.")  如果现在取出的分钟在odds里面,则是奇数,否则,是偶数。

else:

print("not an odd.")

 函数+模块=标准库,函数在模块里,模块在标准库里。

从os模块导入getcwd()这个函数。然后根据需要调用

导入time模块,调用strftime函数并指定显示的格式。

与数组类似,列表可以保存任意类型的数据。

用 [ ] 包围

Python中一行结束就是一条语句的结束。不需要声明变量。

 下来扩展这个程序,让它可以做更多的事情,

前面告诉shell导入time和random模块,然后让中间的if else结构执行多次,选中他们然后点击format里的indent region(快捷键是Ctrl+])会把选中的都缩进一格。

在外面写range(5)表示循环5次,最后的time.sleep是制定了随机数在(1,60)之间。random模块中函数查看由命令dir(random)查看。

指定的sleep时间是随机数,执行结果如下,等待的时间随机,依次输出5个结果。

2列表数据

四个内置数据结构:

列表、元组、字典、集合。这些在代码中都可以直接使用,使用前无需先导入:这些数据结构是Python的一部分。

列表:有序的可变对象集合。

列表就像是一个数组——它存储的对象顺序放置在槽中。可以动态收缩和扩展到任意大小。,与数组一样,槽从0开始编号,这些是“索引值”。

元组:有序的不可变集合。(常量列表)

字典:无序的键/值对集合。(可变的)

字典会关联键和值,而且(类似于列表)可以动态收缩和扩展到任意大小。

集合:无序的唯一对象集合(一种避免重复的数据结构)

列表可以按字面创建或者在代码中“扩展”。

确定一个单词中是否包含元音:

 

这个程序会把单词中所有元音输出,会有重复的元音字母。

所以:

len()内置函数,会报告一个对象的大小

append在列表后面追加一个对象,然后列表长度就增加了一个(可以反复追加)

 

测试最后修改的,使元音不重复的输出

 

结果为:

管理列表:remove pop extend insert

1.从列表删除对象:

Remove:取一个对象值作为唯一参数。

删除指定数据值的第一次出现。

 

2.从列表弹出对象:

Pop:取一个可选的索引值作为参数。

删除和返回一个对象,如果调用pop时没有指定索引值,将删除和返回列表中的最后一个对象。

 

0是一个索引值,对应第一个对象。

 

3.用对象扩展列表:

Extend:取一个对象列表作为唯一参数。

接收第二个列表,将其中的各个对象增加到现有列表。

 

4.在列表中插入一个对象:

Insert:取一个索引值和一个对象作为参数。

将一个对象插入到现有列表中指定索引值的前面。不能插入到列表末尾(append可以)。

 

在第0个位置之前也就是2之前插入1。

 

BOSS程序:

 

把字符串转换成列表,又转换成字符串。

 

题目是把Don’t panic! 转换成on tap

 

运行结果:

 

phrase="Don't panic!"
plist=list(phrase)
print(phrase)
print(plist)
for i in range(4):
plist.pop()
'''每次for循环迭代时,plist都会收缩一个对象(pop弹出最后一个对象,直到最后四个对象都消失。)'''
plist.pop(0)    #删除第一个(0号)对象“D”
plist.remove("'")    #现在是 ont pa
plist.extend([plist.pop(),plist.pop()])
# 先执行里面pop弹出a,p然后扩展到plist之后(相当于把p和a调换位置)
plist.insert(2,plist.pop(3))
#现在是 ont ap  在第2号位置(t)之前插入弹出的第三个对象(空格)现在变成了on tap
new_phrase=''.join(plist)
#把plist转换回一个字符串。
print(plist)
print(new_phrase)

 

看完了1入门和2列表数据,3关于结构化数据的地址已经在下面了,之后还会更新别的内容,欢迎一起学习交流。(´▽`ʃƪ)

https://www.cnblogs.com/sebastiane-root/p/9267783.html

4函数与模块:

https://www.cnblogs.com/sebastiane-root/p/9343461.html

5构建web应用:

https://www.cnblogs.com/sebastiane-root/p/9365248.html

零基础学python之入门和列表数据(附详细的代码解释和执行结果截图)的更多相关文章

  1. 零基础学python之函数与模块(附详细的代码和安装发布文件过程)

    代码重用——函数与模块 摘要:构建函数,创建模块,安装发布文件,安装pytest和PEP 8插件,确认PEP8兼容性以及纠错 重用代码是构建一个可维护系统的关键. 代码组是Python中对块的叫法. ...

  2. 零基础学Python之结构化数据(附详细的代码解释和执行结果截图)

    3结构化数据 字典(查找表).集合.元组.列表 3.1字典 是有两列任意多行的表,第一列存储一个键,第二列存储一个值. 它存储键/值对,每个唯一的键有一个唯一与之关联的值.(类似于映射.表) 它不会维 ...

  3. [零基础学python]为什么要开设本栏目

    这个栏目的名称叫做"零基础学Python". 如今网上已经有不少学习python的课程.当中也不乏精品.按理说,不缺少我这个基础类型的课程了.可是,我注意到一个问题.无论是课程还是 ...

  4. 零基础学python》(第二版)

    ---恢复内容开始--- 零基础学python>(第二版) python学习手册 可以离线下载,  .chn格式, 插入小幽默笑话,在学习累的时候看看笑话 放松一下 欢迎下载转载,请注明出处,谢 ...

  5. 零基础学python,python视频教程

    零基础学python,python视频教程 这是我收集到的互联网上的视频资源,所有内容均来自互联网.仅供学习使用. 目前我在也在学习过程中,会把学习过程中遇到问题以及解决问题的方式,总结到我的公众号[ ...

  6. 小甲鱼零基础学python第25讲课后习题动手练习--通讯录

    小甲鱼零基础学python第25讲课后习题动手练习---通讯录 **************************通讯录要求******************************* 输入指令: ...

  7. Python学习课程零基础学Python

    python学习课程,零基础Python初学者应该怎么去学习Python语言编程?python学习路线这里了解一下吧.想python学习课程?学习路线网免费下载海量python教程,上班族也能在家自学 ...

  8. 零基础学python之构建web应用(入门级)

    构建一个web应用 前面的学习回顾: IDLE是Python内置的IDE,用来试验和执行Python代码,可以是单语句代码段,也可以是文本编辑器中的多语句程序. 四个内置数据结构:列表.字典.集合和元 ...

  9. 零基础学Python不迷茫——基本学习路线及教程!

    什么是Python? 在过去的2018年里,Python成功的证明了它自己有多火,它那“简洁”与明了的语言成功的吸引了大批程序员与大数据应用这的注意,的确,它的实用性的确是配的上它的热度.   Pyt ...

随机推荐

  1. IntelliJ 禁用 Search Everywhere

    发现自: https://youtrack.jetbrains.com/issue/IDEA-114933#comment=27-603899 Open lib/resources.jar/idea/ ...

  2. Android开发经验02:Android 项目开发流程

    Android开发完整流程:   一.用户需求分析 用户需求分析占据整个APP开发流程中最重要的一个环节.一款APP开发的成功与否很大程度都决定于此.这里所说的用户需求分析指的是基于用户的要求所进行的 ...

  3. 经验总结13--EF配置

    EF配置,开发前的准备及步骤. 使用V22013和EF6.1. 1.使用VS新建MVC项目. 2.创建实体类. 3.配置web.config的数据库链接字符串. <connectionStrin ...

  4. CSS3新特性2D、3D效果讲解

    希望这篇博客可以对你有所帮助,如果有什么技术上的问题,希望我们可以做进一步的交流,如果你觉得我哪里阐述的不正确或者你有更好的更透彻的理解,也可以联系我,我在这里随时等着你. 对于css/html是每个 ...

  5. 微信小程序的开发(一)

    我现在在学习,微信小程序开发,刚刚看看一篇对我特别有用的博客文章,我就把摘抄过来了,好好的学习一下. 序言 开始开发应用号之前,先看看官方公布的「小程序」教程吧!(以下内容来自微信官方公布的「小程序」 ...

  6. 初识Qt图片显示、平移及旋转

    1.新建一个Qt Gui应用,项目名称为myPicture,基类选择为QMainWindow,类名设置为MainWindow. 2.在mainwindow.h头文件中添加void paintEvent ...

  7. JDBC连接池使用

    一:一个服务在操作数据库的操作的时候,连接和关闭资源是很消耗系统的资源,不能再每次用户操作数据库的时候,都需要重新建立连接和 关闭连接. 如果这样操作的话,对系统和用户来说,都会消耗大量的资源.所以操 ...

  8. JDK(九)JDK1.7源码分析【集合】HashMap的死循环

    前言 在JDK1.7&1.8源码对比分析[集合]HashMap中我们遗留了一个问题:为什么HashMap在调用resize() 方法时会出现死循环?这篇文章就通过JDK1.7的源码来分析并解释 ...

  9. Spring源码分析(八)AbstractBeanDefinition属性

    摘要:本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 在上一篇中已经完成了XML文档到GenericBeanDefiniton ...

  10. HDU2544(dijkstra_邻接矩阵最水的题没有之一)

    https://cn.vjudge.net/problem/HDU-2544 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场 ...