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

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

一、Python文件类型

1、源代码

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

[[email protected] day01]# vim 1.py
#!/usr/bin/python       
print ‘hello world!‘
[[email protected] day01]# python 1.py
hello world!

2、字节代码

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

编译方法:

import py_compile

py_compile.compile(‘hello.py‘)

[[email protected] amos]$ vim 2.py
#!/usr/bin/pyton
import py_compile
py_compile.compile(‘./1.py‘)
[[email protected] day01]# vim 2.py
#!/usr/bin/python
import py_compile
py_compile.compile(‘1.py‘)
[[email protected] day01]# python 2.py 
[[email protected] day01]# ls
1.py  1.pyc  2.py
[[email protected] day01]# python 1.pyc 
hello world!

3、优化代码

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

-python -O -m py_compile hello.py

[[email protected] day01]# python -O -m py_compile 1.py
[[email protected] 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
[[email protected] day01]# python  1.pyo
hello world!

二、Python变量

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

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

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

变量的命名

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

不能以数字开头

不可以使用关键字

-a a1 _a

变量的赋值

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

a = 1

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

[[email protected] 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

指数:**

例子:写一个四则运算器

要求从键盘读取数字

[[email protected] 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)
[[email protected] 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‘

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

赋值运算符

时间: 2024-12-26 20:32:27

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

python 学习笔记 7 -- Python关键字总结

0.写在前面的话 学习一门语言最重要的功课是练习与复习,在<笨方法学Python>中第三十七节虽然没有教你任何内容,但是它提醒我们:"学了这么多,你还能记得多少?该复习了!" 下面我们就对这一节的第一部分"关键字"来做个复习: Python中的关键字包括如下: and       del        from      not      while    as        elif       global    or       with     

Linux 程序设计学习笔记----Linux下文件类型和属性管理

转载请注明出处:http://blog.csdn.net/suool/article/details/38318225 部分内容整理自网络,在此感谢各位大神. Linux文件类型和权限 数据表示 文件属性存储结构体Inode的成员变量i_mode存储着该文件的文件类型和权限信息.该变量为short int类型. 这个16位变量的各个位功能划分为: 第0-8位为权限位,为别对应拥有者(user),同组其他用户(group)和其他用户(other)的读R写W和执行X权限. 第9-11位是权限修饰位,

Python学习笔记三(文件操作、函数)

一.文件处理 1.文件打开模式 打开文本的模式,默认添加t,需根据写入或读取编码情况添加encoding参数. r   只读模式,默认模式,文件必须存在,不能存在则报异常. w  只写模式,若文件不存在则创建,若文件已存在则清空内容,不可以读文件. a   追加模式,文件不存在则创建,若文件已存在则在文件末尾追加,不可以读文件.    打开非文本的模式,使用"b"表示读取和写入需使用字节,不可指定编码.主要有rb.wb.ab三种模式. 2.操作文件方法 读取文件 with open('

Python学习笔记九:文件I/O

打印到屏幕: 1 #!/usr/bin/python 2 3 print "Python is really a great language,", "isn't it?"; 读取键盘输入: raw_input input 1 #!/usr/bin/python 2 3 str = raw_input("Enter your input: "); 4 print "Received input is : ", str inpu

Python学习笔记六:文件处理

一:打开文件 open(name,mode,[bufferSize]) name:文件路径 mode:文件打开方式 二:文件读取 read()方法:可以一次读取文件的全部内容,Python把内容读到内存,用一个str对象表示. readline([size]):如果不传参,一次默认读取一行.如果size<一行长度,则读取size个字节.如果size>一行长度,则只读取一行. readlines():一次读取io.DEFAULT_BUFFER_SIZE行,约586行,以字符串数组的形式返回读取结

[Python学习笔记1]Python语言基础 数学运算符 字符串 列表

这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档:http://docs.python.org/.在此向文档编辑者致谢.请勿将本文用于商业用途. 一.Python语言介绍 首先,Python是一种广泛应用的通用高级编程语言,具有较高的抽象层次,支持面向对象的编程方法.其具有高级的数据结构和许多方便的库文件,可以完成文件IO.系统调用.网络编程,甚至

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

最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型的计算机语言,它的特点是语法简洁.优雅.简单易学.在1989诞生,Guido(龟叔)开发.这里的python并不是蟒蛇的意思,而是龟叔非常喜欢一部叫做<Monty Python飞行马戏团>的电视剧,所以以python命名(老外就是这么任性).二.解释型语言和编译型语言编译型语言就是先把写好的程序翻

python学习笔记(python发展介绍)

一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交易,金融分析等,作为动态语言的python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛 ·图形GUI python是一门什么样的语言? 编程语言主要从以下几个角度进行分类,编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言. 编译型和解释型 编译型,如:c,c++,

python学习笔记:python字符串

二.python字符串操作符 1. 对象标准类型操作符 Python对象的标准类型操作符一共就三种:对象值的比较.对象身份的比较.布尔类型.其中对象值的比较主要是大于.小于.不等于等的数学比较符:对象身份的比较主要是is和is not这两个符号:布尔类型主要是not.and.or等的逻辑运算符. 字符串标准类型操作符也是这些,在做比较操作的时候,字符串是按照ASCII值的大小来比较的. 2. 序列类型操作符 切片操作符 主要分为三种,分别是正向索引.反向索引.默认索引.下图中显示索引的编号: 注