python学习笔记1:python入门
关于版本的选择
按照网上的说法,如果python是为了在工作中使用,选择2.7版本的。这里我选择2.7.9版本的来进行学习;
Python是什么?
是一种高级的计算机程序设计语言。应用范围比较广,google等名企都在使用。
Python 英文的意思是 巨蟒,脚本;
缺点:
1,执行速度慢,因为是高级语言,翻译成机器语言的成本限制,似得速度相对其它语言来说慢;
2,无法对代码加密,因为是解释性的语言;
安装python
|
系统类型 |
安装方法 |
说明 |
|
MaxOS |
Osx 10.8以上自带python |
|
|
Linux |
基本软件的安装方法 |
|
|
Windows |
设置到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入门的更多相关文章
- python学习笔记(一):python简介和入门
最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...
- python 学习笔记 9 -- Python强大的自省简析
1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...
- python 学习笔记一——Python安装和IDLE使用
好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...
- python学习笔记(python简史)
一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...
- python学习笔记(1)--python特点
python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.pytho ...
- python学习笔记之——python模块
1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...
- Python学习笔记 - day12 - Python操作NoSQL
NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...
- PYTHON 学习笔记1 PYTHON 入门 搭建环境与基本类型
简介 Python,当然大家听到这个名词不再是有关于像JAVA 一样的关于后台,我们学习Python 的目的在于对于以后数据分析和机器学习AI 奠定基础,Python 在数据分析这一块,可谓是有较好的 ...
- python学习笔记一 python入门(基础篇)
简单介绍一下python2.x和3.5的区别 print 在python3.5中print 变为print() Old: print * New: print( * ) 如果想要不换行,之前的 ...
- Python学习笔记——jupyter notebook 入门和中文pdf输出方案
简单粗暴的安装 对于懒人而言,我还是喜欢直接安装python的集成开发环境 anaconda 多个内核控制 jupyter官网 1). 同时支持python2 和python 3 conda crea ...
随机推荐
- .Net Core上也可以使用的二维码组件
我Fork了QRCoder,并且兼容了.Net Core,图形库用的是ZKWeb.System.Drawing Github: https://github.com/zkweb-framework/Q ...
- 一个IT人的成长路
毕业四年多了,来深圳三年多了,经历了刚毕业的懵懂少年,成长为现在的成熟稳重青年.职场上,从刚毕业的小白,成长为现在可以成熟应对各种事情的老司机.经历过从初级研发工程师,到中级研发工程师,到高级研发工程 ...
- java中易错点(一)
由于replaceAll方法的第一个参数是一个正则表达式,而"."在正则表达式中表示任何字符,所以会把前面字符串的所有字符都替换成"/".如果想替换的只是&qu ...
- web服务器集群
概述 集群和分布式都是从集中式进化而来的.分布式和集群会相互合作的,同时的集群和分布式.在这里重点说说集群 集群是什么? 集群能提高单位时间内处理的任务数量,提升服务器性能 有多台服务器去处理任务,但 ...
- 14门Linux课程,打通你Linux的任督二脉!
Linux有很多优点:安全.自主.开源--,也正是这些优点使得很多人都在学Linux. 虽说网上有大把的Linux课程资源,但是对很多小白来说网上的课程资源比较零散并不适合新手学习. 正因为此,总结了 ...
- 用 eric6 与 PyQt5 实现python的极速GUI编程(系列04)---- PyQt5自带教程:地址簿(address book)
[引子] 在PyQt5自带教程中,地址簿(address book)程序没有完全实现界面与业务逻辑分离. 本文我打算用eric6+PyQt5对其进行改写,以实现界面与逻辑完全分离. [概览] 1.界面 ...
- Vue.js——vue-router 60分钟快速入门
概述 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用.vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来.传统的 ...
- 揭秘Windows10 UWP中的httpclient接口[2]
阅读目录: 概述 如何选择 System.Net.Http Windows.Web.Http HTTP的常用功能 修改http头部 设置超时 使用身份验证凭据 使用客户端证书 cookie处理 概述 ...
- asp.net pipeline完整图
- 深入解析js异步编程利器Generator
我们在编写Nodejs程序时,经常会用到回调函数,在一个操作执行完成之后对返回的数据进行处理,我简单的理解它为异步编程. 如果操作很多,那么回调的嵌套就会必不可少,那么如果操作非常多,那么回调的嵌套就 ...