【技术文章】《初识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 ...
随机推荐
- 【JMeter】(2)---HTTP压测
JMeter---HTTP压测 一.创建线程组 右击-->添加-->Threads(Users)-->线程组 下面对比较重要的几个参数,讲解下: 名称: 就是给你这个线程组起名字. ...
- asp.net core 系列 7 Razor框架路由(上)
一.概述 在上二篇中,主要是介绍了asp.net core mvc中路由的使用,这篇继续介绍路由在ASP.NET Core Razor中的使用.Razor Pages应该使用默认的传统路由,从应用程序 ...
- C#版 - Leetcode 65. 有效数字 - 题解
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. Leetcod ...
- eclipse导入别人工程项目后,出现红叉的各种情况
原文:http://www.cnblogs.com/mmzs/p/7662863.html 1.多半是因为jdk版本的原因,调整一下即可: 解决方法:Build Path ==> Configu ...
- sql字符串包含单引号
ad'min select * from user where name ='ad''min'
- C#委托与事件总结
目录 C#委托与事件的总结 1.概述 2.委托 2.1 什么是委托 2.2 委託的使用 2.3 深入理解委托 2.4 为什么要使用委托 2.5 代码清单 3.事件 3.1 事件与委托的关系 3.2 订 ...
- [日常] nginx的错误日志error_log设置
nginx error_log设置1.error_log syslog:server=192.168.1.1 [级别] //直接发送给远程syslog日志集中服务器2.error_log stderr ...
- Java基础:HashMap假死锁问题的测试、分析和总结
前言 前两天在公司的内部博客看到一个同事分享的线上服务挂掉CPU100%的文章,让我联想到HashMap在不恰当使用情况下的死循环问题,这里做个整理和总结,也顺便复习下HashMap. 直接上测试代码 ...
- Mybatis框架基础支持层——反射工具箱之MetaClass(7)
简介:MetaClass是Mybatis对类级别的元信息的封装和处理,通过与属性工具类的结合, 实现了对复杂表达式的解析,实现了获取指定描述信息的功能 public class MetaClass { ...
- 4 Redis 配置文件介绍
2016-12-22 14:28:39 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...