Python get started
简介
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。
Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
特点
易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
易于阅读:Python代码定义的更清晰。
易于维护:Python的成功在于它的源代码是相当容易维护的。
一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
数据库:Python提供所有主要的商业数据库的接口。
GUI编程:Python支持GUI可以创建和移植到许多系统调用。
可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得”脚本化”的能力。
基础语法
标识符,保留字同JS
行和缩进
不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。
if True:
print "True"
else:
print "False"
- 多行语句:一般以新行作为为语句的结束符。 但是我们可以使用斜杠( \)将一行的语句分为多行显示
total = item_one + \
item_two + \
item_three
#语句中包含[], {} 或 () 括号就不需要使用多行连接符
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
- 引号(三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。)
word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""
注释(# 开头,三个单引号(‘’‘)或三个双引号(“””))
空行:函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
变量类型
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
赋值(不需要类型声明)
counter = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串
print (counter);
print (miles);
print (name);
# 多个变量
a, b, c = 1, 2, "john"
a = b = c = 1
标准数据类型(五个,在内存中存储的数据可以有多种类型)
- Numbers(数字)
- String(字符串)
- List(列表,Python 中使用最频繁的数据类型)
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print (list) # 输出完整列表
print (list[0] ) # 输出列表的第一个元素
print (list[1:3]) # 输出第二个至第三个的元素
print (list[2:]) # 输出从第三个开始至列表末尾的所有元素
print (tinylist* 2) # 输出列表两次
print (list + tinylist) # 打印组合的列表
- Tuple(元组,另一个数据类型,类似于List(列表),用”()”标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表)
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
print (tuple) # 输出完整列表
print (tuple[0] ) # 输出列表的第一个元素
print (tuple[1:3]) # 输出第二个至第三个的元素
print (tuple[2:]) # 输出从第三个开始至列表末尾的所有元素
print (tinytuple* 2) # 输出列表两次
print (tuple + tinytuple) # 打印组合的列表
- Dictionary(字典,列表是有序的对象结合,字典是无序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用”{ }”标识。字典由索引(key)和它对应的值value组成。)
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print (dict['one']) # 输出键为'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict) # 输出完整的字典
print (tinydict.keys()) # 输出所有键
print (tinydict.values()) # 输出所有值
数据类型转换:只需要将数据类型作为函数名即可
运算符
- 算术运算符
- 比较(关系)运算符
- 赋值运算符
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
- 逻辑运算符
and not or
- 位运算符
- 成员运算符(字符串,列表或元组。in/not in)
a = 10
b = 20
list = [1, 2, 3, 4, 5 ];
if ( a in list ):
print ("1 - variable a in the list " )
else:
print ("1 - variable a not in the list ")
if ( b not in list ):
print ("2 - variable b not in the list ")
else:
print ("2 - variable b in the list " )
# modify the value of a
a = 2
if ( a in list ):
print ("3 - variable a in the list " )
else:
print ("3 - variable a not in the list ")
- 身份运算符(比较两个对象的存储单元 is/is not)
a = 20
b = 20
if ( a is b ):
print ("1 - a and b are the same log")
else:
print ("1 - a and b are not the same log")
if ( id(a) is not id(b) ):
print ("2 - a and b are the same log")
else:
print ("2 - a and b are not the same log")
# modify the value of b
b = 30
if ( a is b ):
print ("3 - a and b are the same log")
else:
print ("3 - a and b are not the same log")
if ( a is not b ):
print ("4 - a and b are not the same log")
else:
print ("4 - a and b are the same log")
- 运算符优先级
条件语句
if ( var == 100 ) : print ("变量 var 的值为100" )
if condition:
Execute the statement...
elseif:
Execute the statement...
else:
Execute the statement...
循环语句(没有do-while循环)
while循环
for循环
嵌套循环
break语句
continue语句
pass语句(不做任何事情,一般用做占位语句)
for letter in 'Python':
if letter == 'h':
pass
print ('This is the block of pass ')
print ('The current letter is :', letter)
print ("Good bye!")
Number
Python 支持四种不同的数值类型:
整型(Int) 通常被称为是整型或整数,是正或负整数,不带小数点。
长整型(long integers)无限大小的整数,整数最后是一个大写或小写的L。
浮点型(floating point real values)浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
复数( (complex numbers))复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
String
- 访问字符串中的值
var1 = 'Hello World!'
var2 = "Python Runoob"
print ("var1[0]: ", var1[0])
print ("var2[1:5]: ", var2[1:5])
- 更新
var1 = 'Hello World!'
print ("更新字符串 :- ", var1[:6] + 'Runoob!')
- 字符串运算符
operator | describe | instance |
---|---|---|
+ | 字符串连接 | ‘a + b’ HelloPython’ |
* | 重复输出字符串 | a * 2’HelloHello’ |
[] | 通过索引获取字符串中字符 | a[1]’e’ |
[:] | 截取字符串中的一部分 | a[1:4]’ell’ |
in | 成员运算符 - 如果字符串中包含给定的字符返回 True | |
not in | 成员运算符 - 如果字符串中不包含给定的字符返回 True | |
r/R | 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母”r”(可以大小写)以外,与普通字符串有着几乎完全相同的语法。 | |
% | 格式字符串 | print “My name is %s and weight is %d kg!” % (‘Zara’, 21) |
日期和时间( time 和 calendar 模块)
import time; # 引入time模块
ticks = time.time()
print (ticks)
时间元祖
list | Field | value |
---|---|---|
0 | year | 2008 |
1 | month | 1-12 |
2 | day | 1-31 |
3 | hour | 0-23 |
4 | minutes | 0-59 |
5 | seconds | 0-59 |
6 | day of week | 0-6 |
7 | day of year | 1-366 |
8 | summer time | -1, 0, 1, -1是决定是否为夏令时的旗帜 |
函数
def printme( str ):
print (str)
return
printme('hello')
printme('python')
模块
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。 模块让你能够有逻辑地组织你的 Python 代码段。 把相关的代码分配到一个模块里能让你的代码更好用,更易懂。 模块能定义函数,类和变量,模块里也能包含可执行的代码。
import,from-import,from-import*
import module1[, module2[,... moduleN]
# 从模块中导入一个指定的部分到当前命名空间中
from modname import name1[, name2[, ... nameN]]
# 把一个模块的所有内容全都导入到当前的命名空间也是可行的
from modname import *
命名空间和作用域
变量是拥有匹配对象的名字(标识符)。命名空间是一个包含了变量名称们(键)和它们各自相应的对象们(值)的字典。 一个 Python 表达式可以访问局部命名空间和全局命名空间里的变量。如果一个局部变量和一个全局变量重名,则局部变量会覆盖全局变量。
Leave a Comment