python的基础语法

一.Python 简介

1.1. python解释器:

编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件 下载安装Python就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。CPython是使用最广的Python解释器,Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

1.2.编译过程:

python.py——>python解释器——>字节码文件——>python解释器——>二进制文件——>内存——>打印

1.3.编码格式:

编码回顾:Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。解决方法为只要在文件开头加入# -*- coding: UTF-8 -*-或者#coding=utf-8就行了

1.3.1:ASCII编码:

最早只有127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码

1.3.2.Unicode编码:

Unicode把所有语言都统一到一套编码里,解决多种语言的编码问题

1.3.3.UTF-8编码:

编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,

只有很生僻的字符才会被编码成4-6个字节。如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间

1.4.语法基础(以下所有demo都是基于python 3.6编写)

Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。

IndentationError: unexpected indent错误是python编译器是在告诉你,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有python对格式要求非常严格。

python中单行注释采用 # 开头。多行注释使用三个单引号(''')或三个双引号(""")。

eclipse中安装python

:help->install new software->add->pydev      \n

http://pydev.org/updates

在新建工程中创建一个python.py文件,即可开始编写(eclipse还是非常强大,模糊输入、编译错误提醒、很大的提高编写效率 )

Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束

附上一段程序代码:


二.变量类型

2.1 变量赋值

        Python 中的变量赋值不需要类型声明,用  = 来给变量赋值。变量在使用前都必须赋值,变量赋值以后该变量才会被创建

2.2 标准数据类型

        Python有五个标准的数据类型,用于存储各种类型的数据。

2.2.1    Numbers(数字)支持四种不同的数字类型:

              int(有符号整型)

              long(长整型[也可以代表八进制和十六进制])

              float(浮点型)

              complex(复数)

2.2.2    String(字符串):示例代码


2.2.3     List(列表)

        List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。列表用[ ]标识。是python最通用的复合数据类型。


1.Python 提供列表处理的方法

1.1.cmp(list1,list2)    比较两个列表的元素

1.2 .len(list)    列表元素个数

1.3.max(list)    返回列表元素最大值

1.4.min(list)    返回列表元素最小值

1.5.list(seq)    将元组转换为列表

2.list 列表函数&方法

2.1. list.append(obj)    在列表末尾添加新的对象

2.2. list.count(obj)    统计某个元素在列表中出现的次数

2.3. list.extend(seq)    在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

2.4. list.index(obj)    从列表中找出某个值第一个匹配项的索引位置

2.5. list.insert(index, obj)    将对象插入列表

2.6 list.pop(obj=list[-1])    移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

2.7  list.remove(obj)    移除列表中某个值的第一个匹配项

2.8  list.reverse()     反向列表中元素

2.9 list.sort([func])    对原列表进行排序

2.2.4    Tuple(元组)

        元组是另一个数据类型,类似于List(列表)。元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。


元组内置函数

Python元组包含了以下内置函数

1.1  cmp(tuple1, tuple2)    比较两个元组元素。

1.2  len(tuple)    计算元组元素个数。

1.3  max(tuple)    返回元组中元素最大值。

1.4 min(tuple)    返回元组中元素最小值。

1.5 tuple(seq)    将列表转换为元组。

2.2.5    Dictionary(字典)

        字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

Python字典内置函数&方法

1.1.  cmp(dict1, dict2)   比较两个字典元素。

1.2 len(dict)    计算字典元素个数,即键的总数。

1.3 str(dict)   输出字典可打印的字符串表示。

1.4 type(variable)  返回输入的变量类型,如果变量是字典就返回字典类型。

Python字典包含了以下内置方法:

2.1  radiansdict.clear()    删除字典内所有元素

2.2  radiansdict.copy()    返回一个字典的浅复制

2.3  radiansdict.fromkeys()    创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值

2.4  radiansdict.get(key, default=None)    返回指定键的值,如果值不在字典中返回default值

2.5  radiansdict.has_key(key)    如果键在字典dict里返回true,否则返回false

2.6  radiansdict.items()    以列表返回可遍历的(键, 值) 元组数组

2.7  radiansdict.keys()    以列表返回一个字典所有的键

2.8  radiansdict.setdefault(key, default=None)    和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

2.9  radiansdict.update(dict2)    把字典dict2的键/值对更新到dict里

2.10  radiansdict.values()    以列表返回字典中的所有值

dirct 通过特定key来查找数据,如果key 不存在,直接打印是会报错的,有两种方法判断


1>.通过in判断key是否存在:如果不存在,返回False

2>.通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

        set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作:



        注意,dict内部存放的顺序和key放入的顺序是没有关系的。和list比较,dict有以下几个特点:查找和插入的速度极快,不会随着key的增加而变慢;需要占用大量的内存,内存浪费多。而list相反:查找和插入的时间随着元素的增加而增加;占用空间小,浪费内存很少。所以,dict是用空间来换取时间的一种方法。

2.3 运算

2.3.1  布尔值:    

        布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值布尔值可以用and(与运算)、or(或运算)和not(非运算)运算

2.3.2  空值:

        空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值

2.3.3  变量:

        变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。

2.3.4.  除法运算  

        1>:一种除法是 "/" :两数相除取浮点数

        2>:另一种是"//" :两数相除取整

        注意:Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的,例如Java对32位整数的范围限制在-2147483648-2147483647。Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)。


三.循环

Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,另一种是while循环

3.1   for x in .... 循环

3.2  while循环


        要特别注意,不要滥用break和continue语句。break和continue会造成代码执行逻辑分叉过多,容易出错

四.Python的时间和日期

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容

  • 文/Bruce.Liu1 1.运算符 本章节主要说明Python的运算符。举个简单的例子 4 +5 = 9 。 例...
    BruceLiu1阅读 764评论 0 6
  • 一、python 变量和数据类型 1.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序...
    绩重KF阅读 1,645评论 0 1
  • Python简介 Python历史 Python 是由 Guido van Rossum 在八十年代末和九十年代初...
    莫名其妙的一生阅读 1,040评论 0 2
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,547评论 1 118
  • 自己一个人坚硬了太久,都快忘记温柔是什么感觉了。 我不爱穿裙子,不爱扎头发。 他们都说我该是一个柔软的姑娘,可我硬...
    陵壳阅读 203评论 0 0