码迷,mamicode.com
首页 > 编程语言 > 详细

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

时间:2016-05-10 23:52:27      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:python学习笔记2——python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2——python文件类型、变量、数值、字符串、元组、列表、字典


一、Python文件类型

1、源代码

python源代码文件以.py为扩展名,由pyton程序解释,不需要编译

[root@localhost day01]# vim 1.py
#!/usr/bin/python       
print ‘hello world!‘
[root@localhost day01]# python 1.py
hello world!


2、字节代码

Python源码文件经过编译后生成的扩展名为‘pyc’的文件

编译方法:

import py_compile

py_compile.compile(‘hello.py‘)

[amos@AAC-DMP-03 amos]$ vim 2.py
#!/usr/bin/pyton
import py_compile
py_compile.compile(‘./1.py‘)
[root@localhost day01]# vim 2.py
#!/usr/bin/python
import py_compile
py_compile.compile(‘1.py‘)
[root@localhost day01]# python 2.py 
[root@localhost day01]# ls
1.py  1.pyc  2.py
[root@localhost day01]# python 1.pyc 
hello world!


3、优化代码

经过优化的源码文件,扩展名为“pyo”

-python -O -m py_compile hello.py

[root@localhost day01]# python -O -m py_compile 1.py
[root@localhost day01]# ll
total 16
-rw-r--r--. 1 root root  41 Feb 21 17:55 1.py
-rw-r--r--. 1 root root 113 Feb 21 17:56 1.pyc
-rw-r--r--. 1 root root 113 Feb 21 18:15 1.pyo
-rw-r--r--. 1 root root  67 Feb 21 17:56 2.py
[root@localhost day01]# python  1.pyo
hello world!


二、Python变量

变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变。

python下变量是对一个数据的引用

python是指向内存的另外一块区域,而C语言是对内存的一块区域的值重新赋值

变量的命名

变量名由字母、数字、下划线组成

不能以数字开头

不可以使用关键字

-a a1 _a


变量的赋值

是变量的申明和定义的过程

a = 1

id(a) //发现从新赋值a之后,变量a在内存中的地址从7601952变化为16579968

[root@localhost day01]# ipython
Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56) 
Type "copyright", "credits" or "license" for more information.
IPython 1.2.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython‘s features.
%quickref -> Quick reference.
help      -> Python‘s own help system.
object?   -> Details about ‘object‘, use ‘object??‘ for extra details.
In [1]: a=123
In [2]: print a
123
In [3]: id(a)
Out[3]: 7601952
In [4]: id(a)
Out[4]: 7601952
In [5]: a = 456
In [6]: id(a)
Out[6]: 16579968

三、Python中的运算符与表达式

Python的运算符包括

 赋值运算符 x = 3,y = ‘abcd‘ *=  /=  %=  x+=2 x=x+2 x-=2 x=x-2

 算数运算符 + - * / % // **

 关系运算符 > < >= <= == != 返回结果是bool值true或者false

 逻辑运算符 and逻辑与:true and false  or逻辑或false or true  not逻辑非not true


定义变量不需要申明字符类型

In [17]: x=2
In [18]: type(x)
Out[18]: int
In [19]: x=‘david‘
In [20]: type(x)
Out[20]: str

算数运算符真是简洁明了4.00 // 3=1.0表示取整,3**2=9 表示3的平方

In [29]: ‘a‘ +‘b‘
Out[29]: ‘ab‘
In [30]: 3-4
Out[30]: -1
In [31]: 3*2
Out[31]: 6
In [32]: 4/3
Out[32]: 1
In [33]: 4.0 /3
Out[33]: 1.3333333333333333
In [34]: 4.0 // 3
Out[34]: 1.0
In [35]: 4.00 // 3
Out[35]: 1.0
In [36]: 4%3
Out[36]: 1
In [37]: 2**3
Out[37]: 8
In [38]: 3**2
Out[38]: 9


关系运算符

In [39]: 1>2
Out[39]: False
In [40]: 1<9
Out[40]: True
In [41]: 1!=9
Out[41]: True

逻辑运算符

In [42]: 1==1 and 2>1
Out[42]: True
In [43]: 1==1 and 2<1
Out[43]: False
In [44]: 1==1 or 2<1
Out[44]: True
In [45]: not 1==2
Out[45]: True

Lambda(从上到下,优先级越来越高,同行右侧优先级更高)

逻辑运算:or

逻辑运算: and

逻辑运算:not

成员测试:in,not in

同一性测试:is,is not

比较:<,<=,>,=>,!==,==

按位或:|

按位异或:^

按位与: &

移位:<<,>>

加法与减法:+,-

乘法与除法和取余:*,/,%

正负号:+x,-x

按位翻转:~x

指数:**


例子:写一个四则运算器

要求从键盘读取数字

[root@localhost day01]# vim 3.py
#!/usr/bin/python
num1=input(‘Please input a number‘)
num2=input(‘Please input a number‘)
print "%s+%s=%s" %(num1,num2,num1+num2)
print "%s-%s=%s" %(num1,num2,num1-num2)
print "%s*%s=%s" %(num1,num2,num1*num2)
print "%s/%s=%s" %(num1,num2,num1/num2)
[root@localhost day01]# python 3.py 
Please input a number2
Please input a number3
2+3=5
2-3=-1
2*3=6
2/3=0

input()与raw_input()去别:

input() 接受数字和字符串

raw_input()全部解析为字符串

In [47]: input ("Please input: ")
Please input: 123
Out[47]: 123
In [48]: input ("Please input: ")
Please input: abc #这里报错,input输入字符串必须加‘abc’引号,否则识别不了
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-48-ae0272fccd43> in <module>()
----> 1 input ("Please input: ")
<string> in <module>()
NameError: name ‘abc‘ is not defined
In [49]: input ("Please input: ")
Please input: ‘abc‘
Out[49]: ‘abc‘
In [50]: input ("Please input: ")
Please input: 6789
Out[50]: 6789
In [51]: raw_input ("Please input: ")
Please input: sdfsahfha
Out[51]: ‘sdfsahfha‘
In [52]: 234
Out[52]: 234
In [53]: raw_input ("Please input: ")
Please input: 3242
Out[53]: ‘3242‘
In [54]: raw_input ("Please input: ")
Please input: abc
Out[54]: ‘abc‘

四、Python数据类型

数值   整形int 长整形long 浮点型float(3e+7)复数-3.14j In [4]: type(3.14j)Out[4]:complex

字符串  三种方法定义字符串,str=‘this is a string‘ str="s is a string"

    str=‘‘‘this is a string‘‘‘ 三重引号(docstring)除了能定义字符串外还可以用作注释

列表

元组

字典


字符串的切片操作:

In [42]: a=‘abcde‘
In [43]: a
Out[43]: ‘abcde‘
In [44]: a[0]
Out[44]: ‘a‘
In [45]: a[1]
Out[45]: ‘b‘
In [46]: a[4]
Out[46]: ‘e‘
In [47]: a[-1]
Out[47]: ‘e‘
In [48]: a[0]+a[1]
Out[48]: ‘ab‘
In [49]: a[0:2] #取值下标注0和1,不包括最后一个2
Out[49]: ‘ab‘
In [50]: a[:2]
Out[50]: ‘ab‘
In [51]: a[1:2]
Out[51]: ‘b‘
In [52]: a[1:]
Out[52]: ‘bcde‘
In [53]: a[:]
Out[53]: ‘abcde‘
In [54]: a[-1]
Out[54]: ‘e‘
In [55]: a[:-1] #从头开始,不包括最后一个-1对应的e
Out[55]: ‘abcd‘
In [56]: a[::1]
Out[56]: ‘abcde‘
In [57]: a[::2]#步进值为2
Out[57]: ‘ace‘
In [58]: a[::-1]#步进值-1,从后向前取值
Out[58]: ‘edcba‘
In [59]: a[::-2]
Out[59]: ‘eca‘
In [61]: a
Out[61]: ‘abcde‘
In [60]: a[-4:-2]
Out[60]: ‘bc‘
In [62]: a[-2:-4:-1] 从右到左,-2 d -3c -4b不取值,-1表示从右到左
Out[62]: ‘dc‘


表达式是将不同的数据(包括变量、函数)用运算符好号按照一定的规则连接起来的一种式子

赋值运算符





本文出自 “梅花香自苦寒来!” 博客,请务必保留此出处http://daixuan.blog.51cto.com/5426657/1771944

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

标签:python学习笔记2——python文件类型、变量、数值、字符串、元组、列表、字典

原文地址:http://daixuan.blog.51cto.com/5426657/1771944

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!