关于版本的选择

按照网上的说法,如果python是为了在工作中使用,选择2.7版本的。这里我选择2.7.9版本的来进行学习;

Python是什么?

是一种高级的计算机程序设计语言。应用范围比较广,google等名企都在使用。

Python 英文的意思是 巨蟒,脚本;

缺点:

1,执行速度慢,因为是高级语言,翻译成机器语言的成本限制,似得速度相对其它语言来说慢;

2,无法对代码加密,因为是解释性的语言;

安装python

系统类型

安装方法

说明

MaxOS

 

Osx 10.8以上自带python

Linux

 

基本软件的安装方法

Windows

https://www.python.org/ftp/python/2.7.9/python-2.7.9.msi

设置到path中

Python的解释器

解释器版本

说明

cpython

官方的解释器,c语言编写,命令行下运行的python就是这本

ipython

交互式的解释器,基于cpython,在交互式上有提升

pypy

关注执行速度,基于jit技术

jython

运行在java平台的python解释器

ironpython

Dotnet平台的python解释器

使用最广泛的是cpython,如果要和java和dotnet平台交互使用网络调用来交互比较好。

第一个python程序

打开命令行,输入python,进入了cpython的解释器;

命令

说明

100+200

简单计算

print 'hello,world'

输出字符串

exit()

退出python解释器

也可以使用文本编辑器,推荐使用notepad++,注意编码类型保存为utf-8无BOM格式;

print 'hello, python';

a=100+200

print a ;

exit()

运行命令:

python hello.py

运行效果:

 

输入和输出

输出方法 print '字符串',使用逗号隔开多个字符串 ,逗号相当于一个空格;

输入:raw_input('输入提示文字');得到的是字符串;

Python基础

Python采用缩进方式,#开头的语句数注释;当语句以冒号结尾:,缩进的语句为代码块;对大小写敏感;

数据类型

Python可以直接处理的数据类型有一下集中

类型

说明

 

整型

任意大小的,正负的

分为十进制和十六进制ox

浮点数

含有小数

可以采用科学计数法

字符串

使用''或者""括起来的任意字符

使用\来标识转义字符

多行可以使用'''...'''来标识

布尔值

指游True,False两种值

可以进行布尔运算,and,or,not

Patyon还提供列表,字典等多种数据类型,还支持自定义的数据类型

空值

None标识,不能表示0

 

变量

可以是任意类型,直接通过赋值符号定义,变量其实就是定义了一个指针或者说地址

Python是动态语言,java是静态语言

常量

不能变的变量

 

字符串编码

编码

范围

字节数

优势

ASCII

英文字母和数字

1个字节

简单,存储空间小

Unicode

所有语言的字符

4个字节

覆盖面广

UTF8

所有语言的字符

根据实际情况,字母和数字使用1个字节,其它字符根据需要使用字节数

节省空间

文件处理过程: 加载到内存显示使用Unicode编码,保存到文件使用UTF8编码;

浏览器处理过程:服务器端到网页传输通过UTF8编码;

ASCII相关的函数:

函数

功能说明

 

ord('B')

得到对应的数字

 

chr(65)

得到对应的字符

 

Unicode字符 u'你好'

转换成utf8编码:encode('utf-8')

获取字符串长度 len('字符串')

转换成unicode编码 decode('utf-8')

常用注释

#!/usr/bin/env python

# -*- coding: utf-8 -*-

第一行是告诉Linux/os系统,Python是可执行程序,windows忽略;

第二行是告诉Python解释器,按照UTF-8编码读取源文件,否则可能有中文乱码

格式化:

占位符

类型

%d

整数

%f

浮点数

%s

字符串

%x

十六进制数

常用数据结构

数据结构

特征

常见操作

初始化方法

list

长度可变的有序数组,可以构造多位数组

Append, 追加元素

Pop 删除最后一个,或者指定位置的元素

Insert 某个位置插入元素

Len 获取长度

a【i】 获取某个元素,当i为负数表示取得倒数的

['a',123,'shit']

tuple

长度,指向不可变的有序数组,更安全一些

b【i】按照位置取值

('a',789,[1,'end'])

dict

Map,查询效率高,但是存储效率低

In 是否存在

Get 得到元素

Pop【key】 删除元素

C['key']根据key得到值或者增加值

{'name':'carter','age':27}

set

代数里的集合

Add 增加元素

Remove 删除元素

Set([1,2,3,4])

不变对象

就是对象不可以改变,指向可以改变

   

条件和循环判断

种类

格式

说明

条件判断

If

If ... Else

If...elif...else

Elif 从上往下判断

只要 x是非零数字,非空字符串,非空list,条件即可True

循环判断

For var in array:

While(condition):

 

#-*- coding:utf-8 -*--*-

age=3

if age >= 18:

print 'adult'

else:

print 'teenager'

sum = 0

for x in range(101):

sum+=x;

print sum;

sum = 0

n = 99

while n>0:

sum +=n

n-=2

print u'100以内的偶数相加得到',sum

range(num) 一个从0到num-1的list

int('字符串') 把字符串转换为整数

python学习笔记1:python入门的更多相关文章

  1. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  2. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  3. python 学习笔记一——Python安装和IDLE使用

    好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...

  4. python学习笔记(python简史)

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...

  5. python学习笔记(1)--python特点

    python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.pytho ...

  6. python学习笔记之——python模块

    1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

  7. Python学习笔记 - day12 - Python操作NoSQL

    NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...

  8. PYTHON 学习笔记1 PYTHON 入门 搭建环境与基本类型

    简介 Python,当然大家听到这个名词不再是有关于像JAVA 一样的关于后台,我们学习Python 的目的在于对于以后数据分析和机器学习AI 奠定基础,Python 在数据分析这一块,可谓是有较好的 ...

  9. python学习笔记一 python入门(基础篇)

    简单介绍一下python2.x和3.5的区别   print   在python3.5中print 变为print() Old: print * New: print( * ) 如果想要不换行,之前的 ...

  10. Python学习笔记——jupyter notebook 入门和中文pdf输出方案

    简单粗暴的安装 对于懒人而言,我还是喜欢直接安装python的集成开发环境 anaconda 多个内核控制 jupyter官网 1). 同时支持python2 和python 3 conda crea ...

随机推荐

  1. Spring cache简单使用guava cache

    Spring cache简单使用 前言 spring有一套和各种缓存的集成方式.类似于sl4j,你可以选择log框架实现,也一样可以实现缓存实现,比如ehcache,guava cache. [TOC ...

  2. JS鼠标事件大全 推荐收藏

    一般事件 事件 浏览器支持 描述 onClick HTML: 2 | 3 | 3.2 | 4 Browser: IE3 | N2 | O3 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击 onDb ...

  3. 【干货分享】流程DEMO-合同会审表

    流程名: 合同会审表  业务描述: 合同的审批及签订  流程相关文件: 流程包.xml 事务呈批表业务服务.xml 事务呈批表主数据.xml  流程说明: 1.此流程必须先进行事务呈批表流程的配置才可 ...

  4. 浅谈单片机中C语言与汇编语言的转换

    做了一单片机设计,要用C语言与汇编语言同时实现,现将这次设计的感受和收获,还有遇到的问题写下,欢迎感兴趣的朋友交流想法,提出建议. 单片机设计:基于51单片机的99码表设计 软件环境:Proteus8 ...

  5. Spring mvc @initBinder 类型转化器的使用

    一.单日期格式 因为是用注解完完成的后台访问,所以必须在大配置中配置包扫描器: 1.applicactionContext.xml <?xml version="1.0" e ...

  6. innodb 自增列重复值问题

    1 innodb 自增列出现重复值的问题 先从问题入手,重现下这个bug use test; drop table t1; create table t1(id int auto_increment, ...

  7. deepsooncms在Ubuntu 14.04上部署教程

    deepsooncms在Ubuntu 14.04上部署教程 一.安装mono1.在命令行运行sudo apt-key adv --keyserver keyserver.ubuntu.com --re ...

  8. 页面与ViewModel(下)

    在上一篇博客中,笔者分享了一些从页面整体的角度对页面与ViewModel的思考.在本文中笔者希望从相对细节的角度分享一些对页面与ViewModel的思考. 比如,当我们在更新View Model中的绑 ...

  9. ubuntu 启动MySql和安装python的MySQLdb模块

    ubuntu一般会自己预安装mysql,你只需 /etc/init.d/mysql start|stop|restart|reload|force-reload|status  命令便可以实现mysq ...

  10. 图片放大功能插件及jquery.extend函数理解

    前端时间,产品提出社区评论中的图片需要有放大功能.感觉可以共用,所以就想整合一个插件,过程中也借鉴了一些例子. 分析下自己的代码思路: var scaleImg = function(opts) { ...