python(1)
来源:互联网 发布:淘宝ulzzang什么意思 编辑:程序博客网 时间:2024/06/01 12:26
python概念:python是一种解释型的、面向对象的、带有动态语义的高级程序设计语言。
python优点:
创始人评价:简单、优雅、明确
简单体现在如果你的母语是英语,写python脚本就像写文章,很简单;
优雅体现在python的格式,比如缩进来确定代码块,可避免编程人员进行复杂的嵌套;
明确体现在解决问题的方法只有一种最优选项,而perl语言是每个问题有很多最优解,但不利于团队协作;
有强大的第三方库模块,需要实现一复杂功能,只需要调用现有的库,可快速实现功能。20多年的发展,各种库都已经完备,比如:邮件库,爬虫库......
可跨平台移植,java有Java的虚拟机,python同样;
是一种面向对象的语言;
是一种可扩展的语言(与C,C++,Java结合)
python缺点:
代码执行速度慢,相比C语言,不过现在python的异步并发框架导致执行速度慢;
python是开源的编程语言,代码不能加密,当然有相应的工具可以将python代码转换为exe的二进制可执行码,但是反解码也很容易;
python的使用:
交互式使用
脚本使用
/usr/bin/env python ##会直接读取你当前的python版本,然后执行
/usr/bin/python ##仅仅只会读取编写的版本
coding:utf-8 ##转译中文
coding=utf-8
encoding:utf-8
encoding=utf-8
字符编码:
ACCII:1字节=8位,2^8=256
Unicode:2字节=16位,2^16=65536 英文-> 2字节 中文-> 2字节
utf-8:英文 ->1 字节 , 中文->3字节
GB2312:2字节
内存读取:Unicode
存在硬盘:utf-8字符的编码(encode): unicode->utf-8 ##都是2字节,提升效率
字符的解码(decode): utf-8->unicode ##英文1字节,中文3字节,节省空间
例:
Python解释器
cpython
ipython:基于cpython,交互方式有所增强
pypy:对代码进行动态编译,JIT技术(just-in-time compiler,即时编译器),显著提高代码执行速度。
Jpython:java平台上的python解释器,将python代码编译成java字节码执行。
IronPython:直接将python代码编译成.net的字节码
ipython的安装与使用:
下载ipython安装包
切入目录
yum install *
用ipython 进入使用即可
pycharm的安装使用
下载压缩包
执行脚本安装
用pycharm进入使用即可
输入与输出
输出:告诉用户程序执行的结果
# print + 字符串... //字符串可为多个,逗号隔开
# print + 数字|表达式
输入:告诉计算机程序所需的信息
# raw_input写入的内容赋值给变量name,输入的内容为字符类型
# input写入的内容赋值给变量age,输入的内容为数值类型
例:
编写一程序,录入信息包括 hostname、IP、used_year、CPU、Memory、manager_name,如果使用年限超过10年,直接显示警告信息“该服务器使用年限太久!”,如果使用年限不超过10年,显示该服务器信息如下面的格式如下:
主机信息
主机名: hostname
IP:IP
使用年限:used_year
CPU:CPU
Memory:Memory
代码:
测试:
变量:
变量是内存中的一块区域。
变量的命名: 变量名由字母,数字,下划线组成。
>>> a_1 = 111
>>> _a = 222
>>> print _a
222
>>> 1a = 111
File "<stdin>", line 1
1a = 111
^
SyntaxError: invalid syntax //指语法错误,无效的语法
变量的特性:
实际存储在内存上;
变量名最好见名知意;
变量可重新赋值;
>>> number1 = 1
>>> number2 = 2
>>> number1 + number2
3
python中地址变量与c语言刚好相反,一条数据包含包含多个标签;
>>> a = 1
>>> b = 1
>>> id(a)
10812520
>>> id(b)
10812520
运算符与表达式:
赋值运算符:=, +=, -=, /=, *=, %=
算术运算符:+, -, , /, //, %, *
>>> 1 + 1
2
>>> 1 - 1
0
>>> 1 * 3
3
>>> 1 / 2
0
>>> 1.0 / 2
0.5
>>> 1.0 // 2
0.0
>>> 1 % 2
1
>>> 2 ** 3
8
>>> a33 = 3 ** 3
>>> print a33
27
>>> print "a33=",a33
a33= 27
>>> print "a33 =",a33
a33 = 27
关系运算符: >, >=, <, <=, !=, ==
布尔值:1 < 2,返回一个布尔类型的结果
>>> 1 < 2
True
>>> 1 > 2
False
逻辑运算符:逻辑与and, 逻辑或or, 逻辑非not
例:编写一四则表达式,(if语句实现)
from __future__ import division ##导入模块 作用是使用除法的时候 可以精确到小数点;
整型
>>> num1 = 123
>>> type(num1)
<type 'int'>
>>> type(123)
<type 'int'>
长整形
>>> num2 = 999999999999999
>>> type(num2)
<type 'int'>
强制定义为长整型: num3 = 123L
>>> num3 = 123L
>>> type(num3)
<type 'long'>
浮点型:表示小数
>>> f1 = 12
>>> type(f1)
<type 'int'>
>>> f2 = 12.0
>>> type(f2)
<type 'float'>
复数类型:python对复数提供内嵌支持,eg: 3.14j, 8.32e-36j
>>> c = 3.14
>>> type(c)
<type 'float'>
>>> c = 3.14j
>>> type(c)
<type 'complex'>
字符串
字符串的定义
# 字符串定义的第一种方式:
>>> str1 = 'our company is westos'
# 字符串定义的第二种方式:
>>> str2 = "our company is westos"
# 字符串定义的第三种方式:
>>> str3 = """our company is westos"""
>>> type(str1)
<type 'str'>
>>> type(str2)
<type 'str'>
>>> type(str3)
<type 'str'>
>>> say = 'let\'s go'>>> say
"let's go"
>>> say = "let's go "
>>> say
"let's go "
转义符号
>>> mail = "tom: hello i am westos "
>>> print mail
tom: hello i am westos
>>> mail = "tom:\n hello\n i am westos "
>>> print mail
tom:
hello
i am westos
三重引号
块注释
函数的doc文档
字符串格式化
>>> mail = """tom:
... i am jack
... good luck
... """
>>> print mail
tom:
i am jack
good luck
>>> mail
'tom:\n\ti am jack\n\tgood luck\n'字符串索引
>>> a = 'abcde'
>>> type(a)
<type 'str'>
>>> a[0]
'a'
>>> a[1]
'b'
>>> a[3]
'd'
>>> a[0]+a[1]
'ab'
>>> a[0]+a[2]
'ac'
字符串切片
>>> a
'abcde'
>>> a[1:5:2]
'bd'
>>> a[1:5] //代表切片取出第2个到第5个
'bcde'
>>> a[:5]
'abcde'
>>> a[4:]
'e'
>>> a[4:1] //python中默认是从左向右取值
''
>>> a[4:1:-1] //当步长为-1时,从右向左取值
'edc'
>>> a[:]'abcde'
>>> a[-1]
'e'
>>> a[-4:-1] //代表倒数第2个到倒数第4个切片
'bcd'
>>> a[-2:-4]
''
>>> a[-2:-4:1]
''
>>> a[-2:-4:-1]
'dc'
编写python脚本
1)要求用户输入用户名和密码
2)如果用户名和密码都正确时,显示 "wlecome to user manage system"
3)如果用户名或密码错误,重新输入最多有三次机会。
4)用户输入错误超过三次,报错"你已经登录过三次,请10min后登录"
代码如下:
count = 1
while(count<4):
rightusername = "user1"
rightpasswd = "passwd1"
username = raw_input("请输入用户名:")
passwd = raw_input("请输入密码:")
if username == rightusername and passwd == rightpasswd:
print "welcome to user manage system"
exit()
else:
print "用户名或密码错误,请重新输入,最多有三次机会"
count = count + 1
print("你已经登录过三次,请10min后登录")
- Python--python基础知识(1)
- 【python】python 基础知识 1
- 【Python】1“Hello,Python!”
- [python]python a[::-1]
- Python(1)
- Python-(1)
- Python-1
- python 1
- python 1
- Python 1
- python (1)
- Python(1)
- python(1)
- Python(1)
- PYTHON.1
- python - 1
- Python(1)
- Python(1)
- 腾讯首页隔行换色效果及js作用域的实例
- CNTK API文档翻译(5)——对MNIST数据使用逻辑回归
- 全面介绍Windows内存管理机制及C++内存分配实例(二):内存状态查询
- 练习 2-2 在不使用运算符&&或||的条件下编写一个与上面的for 循环语句等价的循环语句。
- 继承hibernateDaoSupport之后通过注解方式注入SessionFactory
- python(1)
- [leetcode]75. Sort Colors(Java)
- 常量指针和指针常量的区别详解
- ios 基础数据持久化存储
- 脚本实现U盘自动挂载(linux平台)
- Go语言的类IPython 交互式编程界面
- butterknife详细使用及混淆打包和新版本(8.6.0)的使用方法
- Mybatis 多表关联查询,快速添加返回类型
- 全面介绍Windows内存管理机制及C++内存分配实例(三):虚拟内存