设为首页 收藏本站
查看: 1219|回复: 0

[经验分享] python学习笔记-第1章节 基础知识

[复制链接]

尚未签到

发表于 2015-4-18 10:42:59 | 显示全部楼层 |阅读模式
  我找到了1本python的书,听说这个教程非常的基础。那就太好了,我从来没有写过程序,那就从这本书开始学习啊,哈哈。我是想边学编程边做一些学习记录方便以后复习啊,再就是可以监督自己学得认真点啊,让自己学得更牢靠。我一定会坚持下去的。因为我梦想有一天能知道程序到底是个什么玩意。我觉得程序那些功能很神奇。我要搞清楚它。
  开始看书实践学习!
一:python的安装与一生中的第一个程序
  哦!要写python程序必须要安装python啊!我以为是直接写呢,晕。我还是先去看看资料为什么要先安装python。通过查询我知道了,原来计算机程序分几种,1种是编译型的,1种是解释型的。编译型的像C C++,解释型的像python perl ruby.哦!不过我还是不太明白,只是有点点概念了!不管了!反正大概知道了,编译型的需要先写好源代码然后编译链接才能运行,解释型的就相当于一个计算机的翻译,可以一条一条的执行。
  我就先安装python的这个翻译了!谷歌搜索到了python的官方网站,晕!有2个派系的安装文件,不管了!2.7的应该比3.2的要简单的,就安装2.7的吧(教材上也安装的2点几的)。因为以前安装过游戏,嘿嘿,我知道如何安装的。不一会儿,安装好了。然后我打开了标准python解释环境IDLE.我按照书上打下1行代码:


print "Hello, world!"  当我再按下回车,居然出现了一行:


Hello, world!  我懂一点点英语,知道这个print是打印的意思,哈哈!这个好,这么快就写出了1行代码。哈哈!
  嘿嘿,计算机还是很聪明的啊!反应也很快!我胡乱输入点看它是什么反应啊!晕!不行,输出了几行怪模怪样的东西,先不管了,还是先严格按照书上说的写啊!
  书上说写python代码可以选择很多种IDE(集成开发环境),哦原来这个IDE是多了很多帮助你写代码的工具。有什么代码自动完成,高亮显示什么的,唉!先不忙了!就像用标准的IDLE吧。
二:算法的意义
  哦!算法!我得仔细瞧瞧这个是个什么东西啊!哦!算法原来就像你平时每天生活所以安排的事情的详细描述啊。比如早上起来是先刷牙啊还是先洗脸啊!或者是拖地啊!需要每天拖一次啊。哦!大概明白点了!
三:好奇心与一个强大IDE的安装
  刚才看到书中介绍了那么多的IDE,我想我还是去寻找个,这样感觉自己确实是很努力的在探索知识。我看到那么多的IDE介绍真不知道该选择哪个,于是我到网上搜索了一番,决定使用不少人推荐的Eclipse。不过我在搜索的过程中看到了一句话,程序员分3种,1种用emacs,1种用vim,1种用其他。晕了。我进一步搜索,emacs是神的编辑器,VIM是编辑器之神,我郁闷,那不是用其他类型的都和神没有关系,我仔细掂量了下自己,刚开始写了第一行代码,和神的距离是遥不可及的,那就先用eclipse,关于神的事情以后我再弄。我找了篇文章介绍eclipse python环境的搭建。花了10分钟搞定了,打开用了下,感觉确实不错啊。你打个pr就会自动提示print每写完一行代码,按下F9就执行了,嗯,不错。
三:数字和表达式  
  哦!python能进行一些类始于计算机的功能啊!我试试,我在eclipse中输入


print 2 + 2  按F9输出了4,嘿嘿,果然不耐,可以进行数字的加法呢。我再试试除法


print 1 / 2  晕,为什么输出0.哦!原来python做整数除法的时候小数部分会被截除。是这样子啊,那有什么办法让它保留小说呢,办法就是用实数,而且参与除法的两个数中有以一个数为浮点数,就可以了。我试试


>>>1.0 / 2.0
0.5
>>>1 / 2.0
0.5
>>>1.0 / 2
0.5
>>>1 / 2.
0.5  哈哈不错!而且,表示实数,在整数后只跟1个点也可以的,哈哈!但是这样用有时候觉得有点繁琐,如果希望python只执行普通的除法该怎么办啊!书上说有办法,就是在代码前增加一行代码:


from __future__ import division
print 1 / 2
print 1 // 2  这样整数除法就不会做整除了,但是如果还是想整除就可以用两个//。仔细想想,除了(加,减,乘,除)应该还可以取余,乘方啊,我试试:


print 1 % 2
print 10 / 3
print 10 % 3
print 9 % 3
print 2.34 % 0.5
________________________________
1
3
1
0
0.34  哈哈不错!完全没有问题,不过取余运算在哪些地方有用的啊。不错,比如你要每10分钟拖地1次,就可以拿检查时间10%的结果是否为0做判断即可,哈哈!仔细想象还真是这样啊,原来取余可以这样应用的。
  晕!刚才没写完就点发布了!现在接着学习,长整型!长整型也就是很长很长的整数类型吧。我在交互环境试试,主要是我现在还写不出很长的代码,用eclipse暂时太浪费了(唉!离神的距离更远了!),我试试看,很长很长的整数,看看python如何回应!


>>> 999999999999999999999999999999999999999
999999999999999999999999999999999999999L  哦!回应是回应对了,可是为什么后面有个L啊!哦原来啊,普通的整数只能在一个范围内的,(2147483647-2147483648).哇!刚才我写的数字超过了普通整数耶!所以后面有个L啊。哦,幸好是大写L啊,要是小写的话和1很像啊,我得记住,这个L以后一定要大写。
  十六进制和八进制。什么是进制!我查询了有关资料!知道了,原来十六进制就是到了16就进一,八进制就是到了8就进一。哦,十进制就是生活中常用的,到了10就进1位啦!唉!为什么人要用十进制啊,要是用十六,八的话,就会明白得更快啊!可惜啊,人只有十个手指头!嘿嘿!
  变量。哦!变量应该是这样子的,就相当于1个箱子,然后里面可以放东西!变量得有个名字,一定要好听而且好认啊,书上有变量取名字很重要哦!而且变量可以包括字母,数字和下划线开头,但是不能用数字开头。哦,记住这点。
  语句。哦!到目前啊!我一直学的东西叫表达式,也就像食谱中的菜。然后呢,我现在要学的是语句,也就是如何去做这些菜,嘿嘿好玩,我现在要开始做菜了!唉!不对啊,我刚才好像已经做过菜了耶!我回忆1下:
  其中的print就是如何做菜的指令语句,2*2就是菜。然后m=2也是把菜2放到m的箱子里。没错,之前已经做过“菜”了。嘿嘿。
  获取用户输入.对!我想起来了。一般的程序都需要让用户输入一些“菜”,然后程序员去安排怎么去做“菜”呢。刚才我写的全都是相当于程序写好的菜啊。获取用户的输入的话,需要用1个函数input,晕死!什么是函数,我得去搜索下相关知识!通过搜索我知道了函数其实就是一段重复利用的代码块!哦,原来是这样子的,就相当于一把刀,随时可以用它来“切菜”。想切就切。但是input这个函数到底在哪里啊,python怎么认识的,我郁闷,我不知道,那就先不管了,我就想象python已经知道了。我现在在交互式下试试这个函数


>>>input("the meaning of life:")
the meaning of life:25
25  哈哈!真的输入输出了!但是仔细一想,这样做没什么用啊。只是回显出来给我看了下用户输入的值。晕死!不行,实际这样做没什么用处!我突然想起了“箱子”,我必须把它放在1个“箱子”里。这样我才可以很好的利用它啊。我试试:


>>>x = input("x:")
x: 23
>>>y = input("y:")
y: 32
>>>print x * y
736  哈哈!不错!这样做就好多啦!我把“菜”放入了“箱子”,而且我还计算输入了2个数的乘积。
   if.if语句。哦!这个应该是如果的意思,那也就是说,如果怎么样了,才怎么样!嗯!这个好,以前我写的几行代码,都是一条一条的执行的!现在有了这个东西就可以如果怎么样了就怎么样了啊,哈哈!就感觉上街买菜啊!如果2.5一斤我才买,多了就不买,嘿嘿!我试试这个的效果。我把前面学习的综合来试试,嘿嘿:


>>> m = 10
>>> if m > 20
SyntaxError: invalid syntax
>>> if m > 20:
  print "OK"

>>> if m > 2:
  print "OK"

OK  嘿嘿!不错,中间我还出了个问题,居然在if语句后面还要打个:号。晕!记住!
四:函数。
  函数的话,我之前也已经查询了有关资料,其实就是一段可以重复利用的小程序段。刚才我不知道python怎么知道input的函数的。现在我知道了,原来是这样子的。input是标准函数,也被称为内建函数!所以python知道的,就相当于1个人肯定知道有没有嘴巴,耳朵一样嘿嘿。其实刚才的乘方可以用内建函数pow来实现:


>>> 2 ** 3
8
>>> pow(2,3)
8  其实这种行为就叫做函数调用啦!一个函数调用行为需要给函数参数,参数的个数和不同的函数实现是有关系的。上面pow的例子是给2个参数,然后函数会返回1个值,这个值就是幂运算啦!因为是交互式环境,所以就直接打印出函数返回值了!哈哈,又学到点东西啦!唉!内建函数还不少啊!我得记住啊!认真实践下比如abs,round,等等,好多呢!
五:模块。
  诶!模块是个什么东西。哦!原来模块是增强python功能的扩展。就相当于,我买了1辆“大黄蜂”,这样我就能更快的去更远的地方!呵呵。模块里有很多扩展的函数,就相当于“大黄蜂”,内建函数就相当于自身有史以来的嘴巴,耳朵。呵呵!比如floor这个函数,可以向下取整。但是这个函数不在内建函数中,而在其他模块中(math模块中),这就需要用一个命令import来导入模块了!我试试:


>>> import math
>>> math.floor(32.9)
32.0  哈哈,不错!成功了!导入1个模块后,只要用模块名.函数的格式就可以使用这个模块中的函数了。但是我注意到1个问题啊,floor向下取整后,出来的结果是浮点数,如果我要把它编程整数怎么办啊!还好有个办法,用int函数把它包起来,试试:


>>> int(math.floor(32.9))
32  哈哈啊!成功了!不错啊。但是每次用math模块里的函数都要加模块名.的前缀,还是非常麻烦啊,怎么办啊!有个解决办法,用form模块import函数。这样的形式就可以直接用函数了,不用加模块名前缀了。试试:


>>> from math import sqrt
>>> sqrt(9)
3.0  嗯,太好了!
  如何在WINDOWS下双击执行python程序.如果要像普通应该程序一样在windows下双击执行,得注意几个问题呢!第一个保存的文件后缀要为.py(这里要注意啊,WINDOWS默认是隐藏了后缀名的,如果你记事本编辑出来的文件后缀其实是.txt,所以得把默认的隐藏后缀改为显示出来。)再一个就是要把python解释器所在的目录加到系统path环境变量里,这样,windows才能找到python解释器呢。还要注意的一个问题的,我像如下写的代码


print "hello world!"  保存为.py结尾的文件,path环境变量也设置好了后,双击后程序一闪而过,晕死!这里必须还要加行代码才行,如下:


print "helloworld!"
raw_input("Press ")  哈哈,这样就好了!你就能看到程序运行的结果了!不错吧!哈哈!
  注释。这个注释非常重要啊,我查询了有关资料说,写好注释不光是方便了自己以后读自己的代码,也是给别人读你代码提供了很大的帮助。多些注释啊,但是简单到白痴的代码行也就不要写了,嘿嘿!
七:字符串.
  最早我写的那行print "Hello, world!"嘿嘿!这个程序中这个"Hello,world"是什么,这个就是字符串了。python里字符串其实和数字一样啊!也是1个值呢!我们来看个字符串:


>>> "Hello,world!"
'Hello,world!'
>>> "Let's go!"
"Let's go!"
>>> 'Let's go!'
SyntaxError: invalid syntax
>>> 'Let\'s go!'
"Let's go!"  嘿嘿,发现没有!python中的字符串,单引号和双引号结果是一样,但是在单引号和双引号混用的时候就表现出来它的作用了;反斜杠呢可以用来转义!这样就可以在一个字符串中只用一种引号形式了!
  字符串的拼接。字符串的拼接呢是用“+”例如:


>>> "Hello," + "world!"
'Hello,world!'
>>> x = "Hello,"
>>> y = "world!"
>>> x + y
'Hello,world!'  哈哈,不错吧,加号还有这个作用呢!
  字符串的表示,str和repr.python中对字符串的处理有两种机制。什么是机制,唉!就想象成办法和做法吧!我暂时也不是很理解!。一种是通过str函数,它会把值转换为合理形式的字符串,使用户看起来容易理解;一种是通过repr函数,它会以合法的python表达式的字符串形式来表示值,如下:


>>> print repr("Hello,world!")
'Hello,world!'
>>> print repr(10000L)
10000L
>>> print str("Hello,world!")
Hello,world!
>>> print str(10000L)
10000  嘿嘿,明白了。这样做是有道理的,请看如下事例:


>>> temp = 42
>>> print "The temperature is" + temp
Traceback (most recent call last):
File "", line 1, in
print "The temperature is" + temp
TypeError: cannot concatenate 'str' and 'int' objects
>>> print "The temperature is" + repr(temp)
The temperature is42  哈哈!第一print语句为什么错误,那是因为不可以将字符串和数字相加呢!第二个正确是因为已经通过repr把temp变量转换为了字符串形式呢!反正!str,repr是将python转换为字符串的2种方法啦!函数str让字符串更容易阅读!,repr把结果字符串转换为合法的python表达式.
  input和raw_input的区别。以前我已经用过input进行用户的输入了,但是这里为什么还要有个raw_input啊,难道其中有什么原因吗,我写个代码看看:


name = input("What is your name?")
print "Hello." + name + "s"
‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘
What is your name?dodolook
出错!!!!!  晕!这样的代码看起来没有任何问题,为什么会出错啊!哦!原来问题在于input会假设用户舒服的是合法的python表达式,如果用字符串作为输入名字,这个程序就不会用问题,然而要求用户输入名字还要加个引号实在有点过分啊!怎么办呢,这个时候就需要用raw_input函数了。它会把所以的输入当作原始数据,然后放入其字符串中。嘿嘿,所以没有特别的需要,都用raw_input吧。关于什么特别需要的时候用input,唉!暂时不管了!
  长字符串。在书写非常长的字符串的时候,例如它需要跨多行的时候,那么可以使用3引号。而且啊这种与众不同的引用方式,你可以在字符串之间同时使用单引号和双引号,而不需要使用反斜线呢!
  嘿嘿!到此为止,第一本编程书的第一章节差不多学完了!花了4个小时学习时间!加油!为了能写出程序的那个梦!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-58411-1-1.html 上篇帖子: 六种流行的语言大餐---C、C++、python、Java、php、C#你更喜欢哪一个呢? 下篇帖子: Python基础07 函数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表