-
python学习笔记(一)
一、Python简介
Python:高级编程语言,提供完善的代码库。主流公司都在用。荷兰的“龟叔”发明。
优点:简单易懂,有大量第三方库;适合开发网络应用和日常工具;
缺点:运行速度慢(解释型语言);代码不加密;
Python版本:目前3版本开始普及,3版不兼容2版本。Python跨平台,能运行于各操作系统。
Python解释器:可以执行.py文件编写的脚本。常见的有CPython官网解释器。
命令行模式:
命令行模式下可以执行.py文件的代码,但该模式下不会显示.py中的代码结果。
交互模式:
python命令进入该模式,该模式下>>>提示符可以直接输入代码,按回车即可得到执行结果。
直接运行py文件:
linux或Mac下,py文件的第一行加如下注释:
#!/usr/bin/env python3
再给py文件加上执行权限:
chmod a+x hello.py
就可以直接在命令行下运行py文件了。
输入与输出:
print()函数可以输出字符串,多个字符串用逗号相隔。输出时遇逗号则输出一个空格。
>>> print('The quick brown fox', 'jumps over', 'the lazy dog') The quick brown fox jumps over the lazy dog
input()函数可以输入字符。
二、Python基础语法
#开头的语句为注释;
缩进行的代码为代码块,可用4空格或tab来缩进;
Python大小写区分。
数据类型:
1、整数:
可任意大小,正负数皆可。十六进制用0x前缀。
2、浮点数:
数字写法:1.23;
科学计数法:1.2e8
3、字符串:
单引号或双引号括住。双引号字符串内可用'表示其本身。单引号字符串则使用\转义字符标识。
如果不转义,则字符串前加r表示原义:
>>> print(r'\\\t\\') \\\t\\
'''...'''格式可以避免用\n换行符直接换行:
print('''line1 line2 line3''')
Python 3的字符串是Unicode编码的。
4、布尔值
True为真,False为假。可以用and、or和not运算。
5、空值
None表示。
变量定义:
小大写英文、数字和_符号组成,且不能用数字开头。可以随意赋予不同类型的值。
常量:
全大写的变量名为常量。(只是习惯用法,实质上也是变量)
字符串编码
py3的字符串支持多语言。
>>> print('包含中文的str')
包含中文的str
#可用十六进制表示字符串
>>> '\u4e2d\u6587'
'中文'
ord()函数获取单字符的整数表示,chr()函数把数字编码转换成相应字符:
>>> ord('A') 65 >>> ord('中') 20013 >>> chr(66) 'B' >>> chr(25991) '文'
字符串在内存中以unicode表示,保存到磁盘或网络传输时必须转换成bytes字节类型。
bytes字节类型的表示方式:
#字节类型的字符串,每个字符只占一个字节 x = b'ABC'
encode方法转换成字节类型:
>>> 'ABC'.encode('ascii') b'ABC' >>> '中文'.encode('utf-8') b'\xe4\xb8\xad\xe6\x96\x87'
decode方法转换成str字符串:
>>> b'ABC'.decode('ascii') 'ABC' >>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8') '中文'
len函数计算字符数,字节类型计算字节数:
>>> len('ABC') 3 >>> len('中文') 2 >>> len(b'ABC') 3 >>> len(b'\xe4\xb8\xad\xe6\x96\x87') 6 >>> len('中文'.encode('utf-8')) 6
保存py源码文件,必须保存为utf-8编码的文件,并且文件开头两行标注如下:
#!/usr/bin/env python3 # -*- coding: utf-8 -*-
格式化字符串
>>> 'Hello, %s' % 'world' 'Hello, world' >>> 'Hi, %s, you have $%d.' % ('Michael', 1000000) 'Hi, Michael, you have $1000000.'