x = 2
print id(x)
3 如果变量没有赋值,则python认为该变量不存在
4 在函数之外定义的变量都可以称为全局变量。全局变量可以被文件内部的任何函数和外部文件访问。
5 全局变量建议在文件的开头定义。
6 也可以把全局变量放到一个专门的文件中,然后通过import来引用:
gl.py文件中内容如下:
_a = 1
_b = 2
use\_global.py中引用全局变量:
import gl
def fun():
print gl._a
print gl._b
fun()
### 常量
python中没有提供定义常量的保留字。可以自己定义一个常量类来实现常量的功能。
class _const:
class ConstError(TypeError): pass
def __setattr__(self,name,vlaue):
if self.dict.has_key(name):
raise self.ConstError, “Can’t rebind const(%s)”%name
self.dict[name]=value
import sys
sys.modules[name]=_const()
### 数据类型
1 python的数字类型分为整型、长整型、浮点型、布尔型、复数类型。
2 python没有字符类型
3 python内部没有普通类型,任何类型都是对象。
4 如果需要查看变量的类型,可以使用type类,该类可以返回变量的类型或创建一个新的类型。
5 python有3种表示字符串类型的方式,即单引号、双引号、三引号。单引号和双引号的作用是相同的。python程序员更喜欢用单引号,C/Java程序员则习惯使用双引号表示字符串。三引号中可以输入单引号、双引号或换行等字符。
### 运算符和表达式
1 python不支持自增运算符和自减运算符。例如i++/i-是错误的,但i+=1是可以的。
2 1/2在python2.5之前会等于0.5,在python2.5之后会等于0。
3 不等于为!=或<>
4 等于用==表示
5 逻辑表达式中and表示逻辑与,or表示逻辑或,not表示逻辑非
### 控制语句】
1 条件语句:
if (表达式) :
语句1
else :
语句2
2 条件语句:
if (表达式) :
语句1
elif (表达式) :
语句2
…
elif (表达式) :
语句n
else :
语句m
3 条件嵌套:
if (表达式1) :
if (表达式2) :
语句1
elif (表达式3) :
语句2
…
else:
语句3
elif (表达式n) :
…
else :
…
4 python本身没有switch语句。
5 循环语句:
while(表达式) :
…
else :
…
6 循环语句:
for 变量 in 集合 :
…
else :
…
7 python不支持类似c的for(i=0;i<5;i++)这样的循环语句,但可以借助range模拟:
for x in range(0,5,2):
print x
### 数组相关
1 元组(tuple):python中一种内置的数据结构。元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串、数字甚至元素。元组是写保护的,即元组创建之后不能再修改。元组往往代表一行数据,而元组中的元素代表不同的数据项。可以把元组看做不可修改的数组。创建元组示例如下:
tuple_name=(“apple”,”banana”,”grape”,”orange”)
2 列表(list):列表和元组相似,也由一组元素组成,列表可以实现添加、删除和查找操作,元素的值可以被修改。列表是传统意义上的数组。列表创建示例如下:
list=[“apple”,”banana”,”grage”,”orange”]
可以使用append方法来在尾部追加元素,使用remove来删除元素。
3 字典(dictionary):由键-值对组成的集合,字典中的值通过键来引用。键和值之间用冒号隔开,键-值对之间用逗号隔开,并且被包含在一对花括号中。创建示例如下:
dict={“a”:”apple”, “b”:”banana”, “g”:”grage”, “o”:”orange”}
4 序列:序列是具有索引和切片能力的集合。元组、列表和字符串都属于序列。
### 函数相关
1 python程序由包(package)、模块(module)和函数组成。包是由一系列模块组成的集合。模块是处理某一类问题的函数和类的集合。
2 包就是一个完成特定任务的工具箱。
3 包必须含有一个\_\_init\_\_.py文件,它用于标识当前文件夹是一个包。
4 python的程序是由一个个模块组成的。模块把一组相关的函数或代码组织到一个文件中,一个文件即是一个模块。模块由代码、函数和类组成。导入模块使用import语句。
5 包的作用是实现程序的重用。
6 函数是一段可以重复多次调用的代码,函数定义示例如下:
def arithmetic(x,y,operator):
result={
“+”:x+y,
“-“:x-y,
“*”:x*y,
“/”:x/y
}
7 函数返回值可以用return来控制。
### 字符串相关
1 格式化输出:
format=”%s%d” % (str1,num)
print format
2 用+进行字符串的合并:
str1=”hello”
str2=”world”
result=str1+str2
3 字符串截取可以通过索引/切片,也可以通过split函数。
4 通过切片截取字符串:
word=”world”
print word[0:3]
5 python使用==和!=来进行字符串比较。如果比较的两个变量的类型不相同,那么结果必然为不同。
### 文件处理
1 简单处理文件:
context=”hello,world”
f=file(“hello.txt”,’w’)
f.write(context);
f.close()
2 读取文件可以使用readline()函数、readlines()函数和read函数。
3 写入文件可以使用write()、writelines()函数
### 对象和类】
1 python用class保留字来定义一个类,类名的首字符要大写。当程序员需要创建的类型不能用简单类型来表示时,就需要定义类,然后利用定义的类创建对象。定义类示例:
class Fruit:
def grow(self):
print “Fruit grow”
2 当一个对象被创建后,包含了三方面的特性,即对象的句柄、属性和方法。创建对象的方法:
fruit = Fruit()
fruit.grow()
3 python没有保护类型的修饰符
4 类的方法也分为公有方法和私有方法。私有函数不能被该类之外的函数调用,私有的方法也不能被外部的类或函数调用。
5 python使用函数"staticmethod()“或”@ staticmethod"指令的方法把普通的函数转换为静态方法。静态方法相当于全局函数。
6 python的构造函数名为\_\_init\_\_,析构函数名为\_\_del\_\_
7 继承的使用方法:
class Apple(Fruit):
def …
如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!