【技术文章】《初识Python》
本文地址:http://www.cnblogs.com/aiweixiao/p/8390413.html

点击关注微信公众号 wenyuqinghuai
1.前言
早就知道Python这一语言,总能在技术博客,公众号里看到,感觉呼声比PHP,Java都高,2018了,咱们也跟一跟吧,“人生苦短,我用Python”。

2.语言本身
2.1特点
【01 胶水语言】:Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
【02 开发哲学】:Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。
【03 强类型】:Javascript和PHP是弱类型的,Python和Ruby是强类型的。弱类型允许不安全的类型转换,强类型则不允许。
2.2 语法
【01 缩进是语法】:Python开发者有意让违反了缩进规则的程序不能通过编译,以此来强制程序员养成良好的编程习惯。并且Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字。
【02 函数定义】:
==函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()
== python 使用 lambda 来创建匿名函数。

【03 注释】:python 中多行注释使用三个单引号(''')或三个双引号(""”)。
【04 其他】:print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,
【05 字符串】:
==如果你要实现从字符串中获取一段子字符串的话,可以使用变量 [头下标:尾下标],就可以截取相应的字符串。s = ‘ilovepython’;s[1:5]的结果是love。
== 字符串链接, printstr+"TEST"# 输出连接的字符串
【06 列表】:
== List(列表) 是 Python 中使用最频繁的数据类型。
== list.append('Google') ## 使用 append() 添加元素
【07 元组】:
== 元组是另一个数据类型,类似于List(列表)。元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
【08 字典】:
== 字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
== 字典键的特性:字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。

【09 字符串—区别】:字典和列表、元组在构建上有所不同。列表是方括号 [],元组是圆括号 (),字典是花括号 {}。
不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
【10 语句】: Python pass是空语句,是为了保持程序结构的完整性。
【11 是否可以改变变量】:
在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。
不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。
可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。
【12 模块】:from fib import fibonacci & import
【13 I/O】:
== 输入: raw_input ,input
3.安装&使用
3.1 安装Python
以下为在Unix & Linux 平台上安装 Python 的简单步骤:
1)打开WEB浏览器访问http://www.python.org/download/
2)选择适用于Unix/Linux的源码压缩包。
3)下载及解压压缩包。
4)如果你需要自定义一些选项修改Modules/Setup
5)执行 ./configure 脚本
6)make
7)make install
执行以上操作后,Python会安装在 /usr/local/bin 目录中,Python库安装在/usr/local/lib/pythonXX,XX为你使用的Python的版本号。
python -V

3.2 运行Python
有三种方式可以运行Python:
1、交互式解释器:
2、命令行脚本:python script.py
3、IDE运行(如PyCharm)
3.3 中文编码
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了
注意:#coding=utf-8 的 = 号两边不要空格。
注意:Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。
4. 代码实践
4.1 hello world
$python
>>>print('Hello World!')
4.2 面向对象
代码在GitHub上的源码地址:http://t.cn/RQjcvfl
代码如下图,这里创建了一个对象 CommonPyClass,函数run()是入口函数,里面调用需要运行的实际的函数。

5. 写在最后
Python的内容远不止这些,本文主要是简单说了其语法了,简单的面向对象的demo,后续会有Python的CGI,GUI编程,链接数据库,以及在机器学习,大数据,自动化运维等诸多方面的应用,今天就先写到这里,欢迎大家关注后续的文章更新。
【技术文章】《初识Python》的更多相关文章
- 开博客这么久以来,第一篇技术文章,python与c的接口对接
在博客园开博客已经有了蛮长时间了,但是从来只是看别人的文章,自己却从未写过一篇技术文章,深表惭愧.内心还是希望能够给大家提供一些帮助的,希望这第一篇技术博客,能够给大家一些帮助.闲话少叙,开始正文. ...
- 收藏的技术文章链接(ubuntu,python,android等)
我的收藏 他山之石,可以攻玉 转载请注明出处:https://ahangchen.gitbooks.io/windy-afternoon/content/ 开发过程中收藏在Chrome书签栏里的技术文 ...
- 通过写n本书的积累,我似乎找到了写好技术文章的方法(回复送我写的python股票电子书)
我写的书不算少,写的博文就更多了,但大多数书的销量也就一般,而我写的技术文章里,虽然也有点击过万的,但不少点击量也就只有三位数. 通过不断反思,也通过对比了一些畅销书和顶流文章,我似乎找到了一些原因, ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- 优秀IT技术文章集(最新)(高质量)
作者:赵磊 博客:http://elf8848.iteye.com 阅读优秀的文章可以使你快速进步,本文收集了广受好评的优秀IT技术文章,在你有空时读一读,安静下来思考一下. 不断更新中... --- ...
- php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27)
php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27) 比较好的模版 免费模板网,提供大量DIV+CSS布局网页模板下载及后台管理 ...
- 趣味Python入门(一):初识Python
[编者按]本文作者是 Abhishek Jaiswal ,擅长 .NET.C#.Python 等多种语言的技术控.本文中,作者通过活泼有趣的口吻向大家介绍了 Python 语言的基础知识,后期多学习历 ...
- 篇2 安卓app自动化测试-初识python调用appium
篇2 安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...
- Python从菜鸟到高手(1):初识Python
1 Python简介 1.1 什么是Python Python是一种面向对象的解释型计算机程序设计语言,由荷兰人吉多·范罗苏姆(Guido van Rossum)于1989年发明,第一个公开发行版 ...
- python开发第一篇:初识python
一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...
随机推荐
- Android 开发工具类 18_NetWorkUtil
检测网络的一个工具包: 1.网络是否可用: 2.判断是否有网络连接: 3.判断 WIFI 网络是否可用: 4.判断 MOBILE 网络是否可用; 5.获取当前网络连接的类型信息: 6.获取当前的网络状 ...
- Django项目开发
1.django中Form验证.CSRF.Cookie.Session.Model操作数据库 2.django介绍&快速实现简单留言系统 3.django开发在线教育网站
- 带着新人学springboot的应用02(springboot+mybatis+缓存 中)
继续接着上一节,大家应该知道驼峰命名法吧!就是我们javabean中属性一般命名是lastName,userName这种类型的,而数据库中列名一般都是last_name,user_name这种的,要让 ...
- 你真的了解 i++, ++i 和 i+++++i 以及 i+++i++ 吗?
我想大部分都知道 i++ 和 ++i的区别,i++ 就是先拿i来使用,之后再自增加1,而++i则是先自增加1,在拿i来使用,例如对于下面这两个语句,我敢保证大部分人都会做: int i = 1; Sy ...
- Pandas 基础学习
加载数据 Fun:pandas.read_csv >>> import pandas >>> food_info = pandas.read_csv("f ...
- 如何使用Git提高研发团队工作效率?
为什么使用Git 随着互联网时代的来临与发展,尤其分布式开发的大力引入,对于开发工程师来说,代码管理变成了头等难题.10多个人或者更多的成员的研发团队如何管理同一份代码,异地办公如何跟同事有效的维护同 ...
- HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端
协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...
- windows资源管理器多标签打开 windows文件夹多标签浏览 浏览器tab页面一样浏览文件夹 clover win8 win10 报错 无响应问题怎么解决 clover卡死 clover怎么换皮肤
大家都知道,我们打开一堆文件夹的时候,是什么样子 “厚厚的一叠”图标堆叠在一起的,非常的不方便 那么,是不是可以像浏览器一样的tab页面展示呢? 答案是可以的 安装好就是这样子的 是不是方便漂亮了很多 ...
- 痞子衡嵌入式:ARM Cortex-M内核那些事(5)- 指令集
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M指令集. 指令集 指令长度(bits) 包含指令 CortexM0 CortexM0+ CortexM1 Cor ...
- ajax跨域请求,亲测有效
跨域请求域有两种常用解决方案,jsonp和cors, 因为jsonp只能解决get请求问题,我这里用的是cors方法. js前端ajax请求: $.ajax({ url: "http://1 ...