第一周python学习2018-12-23

作者: 激昂的小土豆 | 来源:发表于2018-12-23 18:30 被阅读15次

源码

Python解释器:从文件第一行开始,一直运行到文件末尾,会执行文件中的每一行python代码。

Python标准库:是一组丰富的软件模块,提供了大量预建(且高质量)的可重用代码,每个模块中又有很多子模块或者函数。

Datetime模块

os模块:   getcwd函数

import os

os.getcwd()-------------得出代码所在文件夹的名字

os.environ----------访问系统的全部环境变量

os.getenv(‘HOME’)--------单独访问某一个环境变量

sys模块:了解运行解释器的系统

import sys

sys.platform------了解运行解释器的系统

sys.version-----------了解关于所运行的Python版本的大量信息

datetime模块

import datetime

datetime.date.today()------今天的日期

datetime.date.today().year------今天日期的组成成分

datetime.date.today().month

datetime.date.today().day

datetime.date.iosformat(datetime.date.today())-----今天的日期转换为一个字符串

time模块

import time

time.strftime(“%H:%M”)------24小时制的时间

time.strftime(“%A &p”)-----星期及上下午

HTML模块

Import html

html.escape(……….)-----字符串转换

html.unescape(……….)

< ------<

>------->

心号------♥

内置电池----Python的标准库

内置数据结构:

                     列表:[   ]

                               可以包含任何类型的数据

Python变量会动态赋值

在Python中,第一次使用变量时,变量就会立即存在,不需要预声明,Python变量会从所赋对象的类型得到自己的类型信息。

可以向变量赋值  一个方法调用的结果。

Python的“超级操作符”:in: 检查一个对象是不是在另一个对象里

Python的代码块:缩进形式划分代码块,还有冒号:,冒号后必须缩进,表示引入一个新的代码组

If  -----else

elif

12/14

循环

for     提前知道需要多少次迭代

for i in [1,2,3]:

      print(i)

While     不知道需要多少次迭代

range    接收一个整数参数,指示for循环要运行多少次。

for num in range(5):

             print(‘HeadFirst Rocks!’)

模块调用

Import time

time.sleep(5)----让执行暂停5秒

import random

random.randint(1,60)----在1-60中随机生成一个数字

12/15/18

列表数据---处理有序数据

1、数字、字符串、对象

2、内置数据结构:

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

[   ]   ;    ,

字面列表

元组:有序的不可变对象集合,是常量列表

字典:无序可变数据结构。字典中每个唯一键有一个与之关联的值,字典可以包含多个键/值对。与键关联的值可以是任意对象。

集合:无序的唯一对象集合,集合可以根据需要扩展(和收缩)。集合不允许有重复的对象。

12/19/18

问题:本来很疑惑为什么列表切片中,letters[开始:结束:步长],其中并不包括“结束”这个索引值,但是使用letter[::1]时,就包含了最后一个索引值,于是就试了几下:

[if !vml]

[endif]

可以看到,当“结束”索引值是4的时候,并不包含4位置也就是最后一个位置上的元素。但是当“结束”索引值是5或者更大的数字时,就包含了最后一个元素。定义上说“如果没有指定结束值,则取列表允许的最大值”,实验证明,列表允许的最大值可以是5、6、7等超过列表元素的值。因而当处于默认状态时,就意味着取无限大。

经专业人士解释:左闭右开。。。。

注意:

[if !vml]

[endif]

在’’.join()中,只允许有一个数组,所以如图中有多个元素时,需要加上[],变成’’.join([…,….,……,……])

《HeadFirst Python》第二章结束

第二章:列表数据:处理有序数据

在python中,一切都是对象,意味着所有对象都可以赋给变量。

内置数据结构:列表,元组,字典,集合

列表:可异构,动态变化

外形特点:[   ]   ,

字面列表:一次性完成创建和填充

函数:len()  会报告一个对象的大小

Found = []

Len(found)

输出显示:0

“扩展”列表:

函数:append()

found.append(‘a’)

len(found)

输出:1

found

输出:0

if…..in…..

if……not in…….

vowels = [‘a’,’e’,’i’,’o’,’u’]

word = “Milliways”

for letters in word:

       if letter invowels:

           if letternot in found:

               found.append(letter)

for vowel in found:

       print(vowel)

word = input(“provide a word to search for vowels:”)

从列表中删除对象:

remove()   取一个对象值最为唯一参数

pop()   取一个可选的索引值作为参数

用对象扩展列表:

extend()   取一个对象列表作为唯一参数

insert()    取一个索引值和一个对象作为参数

list()   将字符串转换为列表

copy()   复制列表

列表扩展中的中括号记法:

letter[start:stop:step]

letter[3:]      跳过前三个字母,然后给出其余的所有字母

letter[:10]   直到(但不包含)索引位置的10的所有字母

letter[::2]  步长为2

‘’.join()   将列表转换为字符串

list()

列表切片——非破坏性的

Python

缺点:第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。例如开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网络更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?这就好比F1赛车和普通的出租车在北京三环路上行驶的道理一样,虽然F1赛车理论时速高达400公里,但由于三环路堵车的时速只有20公里,因此,作为乘客,你感觉的时速永远是20公里。

第二个缺点就是代码不能加密。如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

这个缺点仅限于你要编写的软件需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。

再说了,现在如火如荼的开源运动和互联网自由开放的精神是一致的,互联网上有无数非常优秀的像Linux一样的开源代码,我们千万不要高估自己写的代码真的有非常大的“商业价值”。那些大公司的代码不愿意开放的更重要的原因是代码写得太烂了,一旦开源,就没人敢用他们的产品了。

Python交互模式和命令模式执行python代码的区别:

Python交互模式的代码是输入一行,执行一行,而命令行模式下直接运行.py文件是一次性执行该文件内的所有代码。可见,Python交互模式主要是为了调试Python代码用的,也便于初学者学习,它不是正式运行Python代码的环境!

在Python交互式模式下,可以直接输入代码,然后执行,并立刻得到结果。

在命令行模式下,可以直接运行.py文件。

Python的缩进格式利弊:

缩进有利有弊。好处是强迫你写出格式化的代码,但没有规定缩进是几个空格还是Tab。按照约定俗成的管理,应该始终坚持使用4个空格的缩进。

缩进的另一个好处是强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函数,从而得到缩进较少的代码。

缩进的坏处就是“复制-粘贴”功能失效了,这是最坑爹的地方。当你重构代码时,粘贴过去的代码必须重新检查缩进是否正确。此外,IDE很难像格式化Java代码那样格式化Python代码。

最后,请务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

Python数据类型:

如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,比如:

'I\'m \"OK\"!'

表示的字符串内容是:

I'm "OK"!

源代码

源码就是指编写的最原始程序的代码。运行的软件是要经过编写的,程序员编写程序的过程中需要他们的“语言”。音乐家用五线谱和音符,建筑师用图纸和笔,那程序员的工作的语言就是“源码”了。源代码不能直接运行,必须编译后才能运行。源码经过编译处理后就可以直接在操作系统下运行了。

人们平时使用软件时就是程序把“源码”翻译成我们可直观的形式表现出来供我们使用的。 

任何一个网站页面,换成源码就是一堆按一定格式书写的文字和符号,但我们的浏览器帮我们翻译成眼前的模样了。

源代码是指原始代码,可以是任何语言代码。

汇编码是指源代码编译后的代码,通常为二进制文件,比如共享库、可执行文件.NET中间代码、JAVA中间代码等。

高级语言通常指C/C++BASICC#JAVAPASCAL、易语言等等。汇编语言就是ASM,只有这个,比这个更低级的就是机器语言了。

源码主要功用有如下2种作用:

1.生成目标代码,即计算机可以识别的代码。

2.对软件进行说明,即对软件的编写进行说明。为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。

需要指出的是,源代码的修改不能改变已经生成的目标代码。如果需要目标代码做出相应的修改,必须重新编译。

源码组合

编辑

网站源码作为软件的特殊部分,可能被包含在一个或多个文件中。一个程序不必用同一种格式的源代码书写。例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。

较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。为了降低这种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。

还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。

执行效率

编辑

虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。普遍规律是:越高级的语言,其执行效率越低。这也是为什么汇编语言生成的文件比用BASIC语言生成文件普遍要小的原因。

源代码就是用汇编语言和高级语言写出来的代码。主要对象是面向开发者;

我们平常使用的应用程序都是经过源码编译打包以后发布的,呈现的最后结果是面向使用者,最终客户的。

HTML

超文本标记语言,标准通用标记语言下的一个应用。

超文本就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。

超文本标记语言的结构包括头”部分(英语:Head)、和“主体”部分(英语:Body),其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。

制表符(也叫制表位)的功能是在不使用表格的情况下在垂直方向按列对齐文本。

水平制表符就是水平空出几个格,说像一下打了几个空格一样。编程里面用“\t”表示。垂直制表符就是垂直空出几个格,说像一下打了几个回车一样。编程里面用“\v”表示。

相关文章

  • 第一周python学习2018-12-23

    源码 Python解释器:从文件第一行开始,一直运行到文件末尾,会执行文件中的每一行python代码。 Pytho...

  • python学习之旅-第一周 实战作业

    第一周实战作业学习python的第一周 5.19号完成练习实战作业 爬去58同城平板电脑列表里的卖家信息 目标:...

  • 第一周

    2.25-3.3 开学第一周学习了逻辑回归算法以及算法的实验、python on data、论文On The Mo...

  • Python学习周总结(18.02.26 - 03.02)

    本周即Python学习的第一周,其实笔者在参加培训之前已经自学了Python的基础知识,故前两周的任务意在巩...

  • python基础知识(1)

    实行计划的第一周,python基础学习。使用的是廖雪峰python教程,笔记习惯使用手写笔记本,所以这里就放部分课...

  • 2018-03-03

    Python学习第一周总结(2018-2-26 ——2018-3-2) markdown的使用方法 1,#可以用来...

  • Python实战计划学习笔记(1)做一个网页

    背景 这是学习Python爬虫技术的第一周第一个作业,通过写网页的形式学习HTML语言。 心得总结 HTML是由标...

  • python学习计划

    第一周: Python基础:python的简介、搭建Python开发环境、基本的数据类型、数据结构(列表、字典、元...

  • python学习之旅-第一周week1-2

    week1-2作业:学习python的第一周 5.16号爬取了本地的静态页面 主要抓取上图中商品的 标题,价格,...

  • ppt内容

    项目名称 爱生活爱电影 小组成员 文静 魏麟苏 周世豪 左良玉 学习进度 第一周:python语言的学习输入输出、...

网友评论

    本文标题:第一周python学习2018-12-23

    本文链接:https://www.haomeiwen.com/subject/wfgnkqtx.html