Python适合于Web网站和各种网络服务开发、系统工具和脚本开发等。对比于C语言、Java语言,Python属于解释执行,运行速度慢,但是代码量少,相对于硬件处理速度,Python还是极具优势的。对了,Python开发的源码是无法加密的,这个要注意哦。
官方下载:
https://www.python.org
我这里下载了python-2.7.11.amd64.msi,下载完成后记得把\Python27目录添加到Windows环境变量的Path下,下来简单来编写helloworld:
我这里使用Notepad++(设置为utf-8无bom格式)新建helloworld.py
print 'HelloWorld'
然后运行 –> cmd –> 切换到helloworld.py所在目录 –> python helloworld.py –> exit()
这样就输出了HelloWorld,有木有很简单,这里有个注意点,首行不能有空格,Python对缩进有严格要求。
# 这一行全都是注释
(1)整数和浮点数
整数:1,-1,0xff01
浮点数:1.23,-1.23,1.2e3
(2)字符串
‘ab’,”cd”,”I’m gg”,’I have “books”’,有时候还会出现既包含’又包含”的情况,这种情况需要对字符串的某些特殊字符进行“转义”,Python字符串用\进行转义,如’gg said \”I\’m gg\”.’,转义字符\不计入字符串的内容中,其他常用转义字符还有:
\n 表示换行
\t 表示一个制表符
\\ 表示\字符本身
raw字符串与多行字符串:
我们在字符串前面加个前缀r,表示这是一个raw字符串,里面的字符就不需要转义了。
但是r’…’不能表示多行字符串,也不能表示包含’和 “的字符串,如果要表示多行字符串,可以用”’…”’表示。
'''Line 1 Line 2 Line 3'''
r'''Line "1". Line 2. Line's 3'''
Unicode字符串:
Unicode通常用两个字节表示一个字符,Python以Unicode表示的字符串用u’…’表示,不加u,中文就不能正常显示,比如:
print u'博客'
(3)布尔值
True,False,布尔值可以用and、or和not进行运算。
(4)空值
None
(5)变量
在Python中,变量的概念基本上和初中代数的方程变量是一致的。
a = 123
# a是整数
print a
a = 'abcd'
# a变为字符串
print a
# a输出abcd
这种变量本身类型不固定的语言称之为动态语言。
Python内置了list数据类型,list是一种有序的集合,可以随时增删其中的元素。
# 创建list
>>> data = ['Zhangsan', True, 100]
>>> data # 打印data变量的内容
['Zhangsan', True, 100]
# 按照索引访问list
>>> print data[0] # 使用索引打印第一个元素,注意不要越界
Zhangsan
# 倒序访问list
>>> print data[-3]
Zhangsan
# 添加元素
# append()方法
>>> data.append('Lisi')
>>> print data # append()总是把新的元素添加到list的尾部
['Zhangsan', True, 100, 'Lisi']
# 添加元素
# insert()方法接受两个参数,参数一是索引号,参数二是待添加的新元素
>>> data.insert(0, 'Wangwu')
>>> print data
['Wangwu', 'Zhangsan', True, 100, 'Lisi']
# 删除元素
# pop()方法总是删掉list的最后一个元素,并且还返回该元素并打印出
>>> data.pop()
'Lisi'
>>> print data
['Wangwu', 'Zhangsan', True, 100]
# 利用索引删除元素
>>> data.pop(1)
'Zhangsan'
>>> print data
['Wangwu', True, 100]
#修改元素
>>> data[0] = 'Zhangsan'
>>> print data
['Zhangsan', True, 100]
tuple是Python另一种有序的列表,tuple和list非常类似,只是创建完毕不可修改。创建tuple和创建list唯一不同之处是用()替代了[]。
tuple没有 append()方法,也没有insert()和pop()方法。
# 创建tuple
# data用tuple表示如下:
>>> data = ('Zhangsan', True, 100)
下来看看“可变”的tuple,上面不是说不可修改吗?看完下面你就知道了:
>>> data = ('Zhangsan', 'Lisi', ['Wangwu', 100])
>>> d = data[2]
>>> d[0] = 'Wanger'
>>> print data
('Zhangsan', 'Lisi', ['Wanger', 100])
我们看图,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple所谓的“不变”是说,tuple的每个元素的指向永远不变,要创建不变的Tuple,则必须保证元素本身也不变。
(1)if
代码缩进要严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格。
num = 10
if num >= 5:
print 'num:', num
print 'END'
注意:if语句后接表达式,然后用:表示代码块开始。
(2)if-else
if num >= 5:
print 'num:', num
else:
print 'no'
(3)if-elif-else
if age >= 5:
print 'num:', num
else:
if age >= 3:
print 'num:', num
else:
print 'no'
(4)for
可用于遍历一个list或tuple。
data = ['a', 'b', 'c']
for i in data:
print i
(5)while
while循环不会迭代list或tuple的元素,而是根据表达式判断循环是否结束。while循环每次先判断a < b,如果为True,则执行循环体的代码块,否则,退出循环。
a = 10
b = 50
while a < b:
print a
a = a + 10
(6)break
用for或者while循环时,如果在循环体内想直接退出循环,可以使用break语句。
a = 10
b = 50
while a < b:
print a
if a = 20:
break
a = a + 10
(7)continue
continue跳过代码后会继续进入下一次循环。
(8)多重循环
for a in ['a', 'b', 'c']:
for b in ['1', '2', '3']:
print a + b