Python 学习总结(一):掌握基础知识,查缺补漏

    通过一周多的学习,对python语言已经有了基本的了解和认识,但仅仅将知识学习一遍是不够的,因此我又从头看了一遍,仔细回味,发现本身对其中知识点的了解的不是很详尽,没有理解就没法开发,惟一的解决办法就是吃透它。固然,做为一个初学者,所谓的吃透不必定是彻底的掌握,而是知道它的意思和用法,可以初步简单的运用,好比在一堆代码中,可以知道其意思,在代码中的做用等。下面就让我来总结下:java

    (1)python的安装和界面

    本人使用的是Windows64位系统,因此安装起来很简单,自行百度,使用的是3.6x版本,百度网盘下载地址:https://pan.baidu.com/s/1pMrrIOj,密码:ee2a。在开发中要分清命令行模式python交互模式的区别,否则在学习过程当中可能会由于没必要要的错误浪费时间。python

    (2)python代码编写规范

    若是安装了开发工具,就能很清楚的感觉到python语言的语法规范了。使用缩进来组织代码块;大小写敏感等,因此在开发过程当中,最好养成良好的开发习惯,这样才能更好更快的开发,避免出错。安全

    (3)python数据类型、变量、常量

    数据类型无非就是整数、浮点数、字符串、布尔值等,固然后面还有列表、字典什么的,和java其余没多大区别,只是在写法上有点出入,准确的说是表达更加简洁了。在这里注意空值,用None表示,None!=0,和0是有区别的,这点要注意。固然,在开发中,常量、变量一样不可或缺,有点开发基础的都应该有所了解的,经过一个简单的例子来讲明一下变量:app

 a = 'ABC'
 b = a
 a = 'XYZ'
 print(b)

    上面代码的输出是‘ABC’,分析一下:函数

执行a = 'ABC',解释器建立了字符串'ABC'和变量a,并把a指向'ABC'工具

py-var-code-1

执行b = a,解释器建立了变量b,并把b指向a指向的字符串'ABC'学习

py-var-code-2

执行a = 'XYZ',解释器建立了字符串'XYZ',并把a的指向改成'XYZ',但b并无更改:开发工具

py-var-code-3

因此,最后打印变量b的结果天然是'ABC'了。编码

    (4)字符串和编码、格式化

    计算机只能处理数字,若是要处理文本,就必须先把文本转换为数字才能处理,1字节=8Bit,ASCII、Unicode和UTF-8的关系以下:spa

字符 ASCII Unicode UTF-8
A 01000001 00000000 01000001 01000001
x 01001110 00101101 11100100 10111000 10101101

     不少网页的源码上会有相似<meta charset="UTF-8" />的信息,表示该网页正是用的UTF-8编码。Python对bytes类型的数据用带b前缀的单引号或双引号表示:

x = b'ABC'

    %运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。若是只有一个%?,括号能够省略:

>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'

    (5)list、tuple、dict、set

       这几个在开发中很经常使用,因此必须清楚它们的具体用法。

       一、list是有序集合,能随时添加和删除数据,可变集合;

       二、经过索引访问数据,从0开始,既能正向访问亦能反向访问,即正向从0开始访问第一个元素,反向从-1开始访问最后一个元素;

        三、用 [  ] 显示;

        四、其方法不少,如 append、insert、pop;

        五、里面元素的数据类型也能够不一样

>>> AList = ['Ada','Bob',123,'Daddy','Emmy']
>>> AList[0]
>>> 'Ada'
>>> AList[-1]
>>> 'Emmy'

        注意确保不要越界,会报IndexError错误。

         一、tuple,另外一种有序列表叫元组,和list类似,但一旦初始化就不能修改;

         二、经过索引访问数据,从0开始,既能正向访问亦能反向访问,即正向从0开始访问第一个元素,反向从-1开始访问最后一个元素;

         三、用()显示,当定义一个tuple时,在定义的时候,tuple的元素就必须被肯定下来;

         四、无 append、insert、pop等方法,不能赋值成另外的元素;

         五、特性是代码安全;

         六、只有1个元素的tuple定义时必须加一个逗号,来消除歧义,t(1,);

         七、tuple元素中包含list时,list可变,但tuple自己未变;

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

        注意确保不要越界,会报IndexError错误。

        一、dict全称dictionary,字典,也称为map,使用键-值(key-value)存储,具备极快的查找速度;

        二、dict的key必须是不可变对象;

        三、 dict内部存放的顺序和key放入的顺序是没有关系的;

        四、 方法 get(key)获取对应value,pop(key)删除元素;

>>> d = ['Ada':98,'Bob':78,'Cily':100]
>>> d['Ada']
>>> 98

 

        一、set和dict相似,也是一组key的集合,但不存储value。因为key不能重复,因此,在set中,没有重复的key;

        二、 建立一个set,须要提供一个list做为输入集合;

        三、不能够放入可变对象;

        四、方法add(key),remove(key);

>>> s = set([1,2,2,3,1,5])
>>> s
>>> {1,2,3,5}

 

     (6)条件判断和循环

         和java语法相似,也是if-else,while,for的使用:

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

        注意,这里if语句的特色:从上往下判断,若是在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elif和else,以下打印的是 teenager:

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

        这里的循环有两种方式,一种是for...in循环,一种是while循环,很简单的,基本和java语法一致,以下:

# for...in循环
names = ['Michael', 'Bob', 'Tracy']
for name in names:
    print(name)

# while循环
sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)

        range()函数,能够生成一个整数序列,再经过list()函数能够转换为list,以下:

>>> list(range(5))
[0, 1, 2, 3, 4]

        以上是学习python语言时所必须掌握和理解的,也是前期的知识点,很少但须要充分的理解和运用,只有把基础知识打的够牢固,后面的增长训练如函数、进程等,才能保证本身学起来不吃力。

相关文章
相关标签/搜索