python的基础
来源:互联网 发布:类似知否的古风宅斗文 编辑:程序博客网 时间:2024/05/17 22:06
python
简介
Python, 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中[3] 有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
(1)python的版本
python2.x 2.7.x->rhel 7.0 7.2
python3.x
(2)python的网页
www.tiobe.org
python在shell的交互式使用
python与ipython
(1)python
(2)ipython
(3)python与ipython的区别
ipython是python的升级版,更完善的交互使用python语言
python在shell中脚本书写的解释器
python的一个例子:
#!/usr/bin/env python ##解释器#coding:utf-8_author_ = "lvah"'''@author:fairy@file:111.py@contact:'''x=10if x>0: print 'x是正数\n',x-10elif x<0: print 'x是负数\n',x+10else: print 'x为零'
/usr/bin/env python 与 /usr/bin/python 的区别
由于python的版本不同不兼容,python脚本到达不同系统会有语法错误,所以需要加上环境变量
环境变量 env
字符编码
ASCII :是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。
1字节=8位,2^8=256,a-z A-Z (不足够中文字符)
Unicode :(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。
2字节=16位,2^16=65536,a -> 两字节 中文 -> 两字节 (对字母而言-字节浪费)
utf-8 :UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。
a -> 1字节,中文 -> 3字节
GB2312 :2字节
示例:
#!/usr/bin/env python#coding:utf-8 ##定义字符编码(可识别中文字符)#coding=utf-8 ##格式2#encoding:utf-8 ##格式3#encoding=utf-8 ##格式4#定义变量a,值为1a = 1print a
内存读取:Unicode
存储硬盘:utf-8
字符的编码(encode): unicode -> utf-8
字符的解码(decode): utf-8 -> unicode
##字符的编码>>> name_utf8 = name_unicode.encode('utf-8') ##字符的解码>>> name_unicod1 = name_utf8.decode('utf-8')
python的解释器
Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器。
cpython(ClassicPython,也就是原始的Python实现,需要区别于其他实现的时候才以CPython称呼;或解作C语言实现的Python)。这是最常用的Python版本。
ipthon:cpython(底层)高配,
Jpython:java,(原名JPython;Java语言实现的Python,现已正式发布)。Jython可以直接调用Java的各种函数库。
Ironpython:windos .net,(面向.NET和ECMA CLI的Python实现)。IronPython能够直接调用.net平台的各种函数库。可以将Python程序编译成.net程序。
pypy:JIT,just in time(使用Python语言写的Python)
编辑器
vim
gedit
atom -> github
pycharm
///
markdown -> .md -> atom -> pdf
git
svn
变量
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念
命名规则:
变量名必须以字母或下划线打头,名字中间只能由字母、数字和下划线“_”组成
运算符
赋值运算符:=,+=,-+,/=,%=,=,*=
算术运算符:+,-,,/,//,%,*
关系运算符:>,<,>=,<=,==,!=
逻辑运算符:逻辑与(and)或(or)非(not)
1本身代表true
0本身代表false
示例:
用python实现一个四则运算
#!/usr/bin/env pythonfrom __future__ import division ##这里引入除法的小数结果形式''' ##''' '''表示注释部分,有时候可以指定规范python的格式@author:fairy@file:4.py@contact:xiaojun0118@foxmail.com@time:6/25/173:48 PM@DESC;'''num1 = input("num1:")operate = raw_input("operate:")num2 = input("num2:")if operate == "+": print num1 + num2elif operate == "-": print num1 - num2elif operate == "*": print num1 * num2elif operate == "/": print num1 / num2else: print "error"
测试:
基本数据类型
整型:
>>> a = 123>>> type(a)<type 'int'>
长整型:
>>> a = 123L ##加L强制转为长整型>>> type(a)<type 'long'>>>> a = 1111111111111111111111111111111111111111111111111111111111111111111111111>>> type(a)<type 'long'>
浮点型(小数):
>>> a = 1.0>>> type(a)<type 'float'>
复数:
>>> a = 1+4j>>> type(a)<type 'complex'>
字符串(Character string )
字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的
##字符串的定义方式1>>> str1 = 'hello world' ##单引号>>> type(str1)<type 'str'>##字符串的定义方式2>>> str2 = "hello world" ##双引号>>> type(str2)<type 'str'>##字符串的定义方式3>>> str3 = """hello world""" ##三重双引号>>> type(str3)<type 'str'>##字符串的转义(\)>>> say = 'let\'s go'>>> print saylet's go
三重单引号
(1)注释
(2)字符串的格式化
示例:
输入主机的信息,给出相应的信息
#!/usr/bin/env python# coding:utf-8_author_ = "lvah"'''@author:fairy@file:en.py@contact:xiaojun0118@foxmail.com@time:6/25/172:43 PM@DESC;'''hostname = raw_input("主机名:")IP = raw_input("IP:")used_year = input("使用年限:")CPU = raw_input("CPU:")Memory = raw_input("内存:")manager_name = raw_input("管理员:")if used_year > 10: print '该服务器使用年限太久!'else: print ''' 主机信息 主机名:%s IP:%s 使用年限:%d CPU:%s Memory:%s manager_name:%s ''' % (hostname, IP, used_year, CPU, Memory, manager_name)
字符串索引
正向从0位开始,反向从-1位开始
>>> a = 'hello world'>>> a[1]'e'>>> a[0]'h'>>> a[-1]'d'>>> a[0]+a[6]'hw'
字符串的切片
>>> a = '01234567'>>> a[0:5:1] ##表示从0到5,以步长为1取值'01234'>>> a[-1:5:1] ##python默认是从左往右的''>>> a[-1:5:-1] ##当步长为-1时,从右向左取值'76'>>> a[0:5:2]'024'>>> a[0:5:-2]''>>> a[:] ##表示取所有'01234567'
- Python的基础
- Python的基础(变量)
- python的自省基础
- Python的基础函数
- python的基础语法
- 关于Python的基础
- Python的基础语法
- python的基础语法
- python的基础
- python的基础语法
- python基础的学习
- Python的一些基础
- Python学习笔记-基础的基础
- Python基础:Python的变量和对象
- Python基础:Python的变量和对象
- Python基础:Python的变量和对象
- python基础学习-python的json
- python基础篇之Python的注释
- 【人工智能】图像识别之小白天书——验证码篇(1)
- JSP自定义标签库和函数
- 熄灯问题-对于每个问题有若干种状态,求出这个组合若干种状态的组合
- CodeVS 1163 访问艺术馆(树形DP)
- xpath 爬取图片
- python的基础
- VS2013配置HDF5
- 【计网】TCP的三次握手及四次挥手详解
- 创建版本库
- 第十七周 动态规划
- Android 系统 UI
- 程序员日常工作英文20170628
- 【stm32f407】SD协议(三)-源码
- sshaboot