基础:
字符数组、列表等容器下标从0开始
Python数据类型
- 数字
var1 = 1
- 字符串
str = 'Hello World!' 下标访问字符串类似列表
- 列表
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]print list[0] # Prints first element of the listprint list[1:3] # Prints elements starting from 2nd to 4thprint list[2:] # Prints elements starting from 3rd elementdel list[0] # Deletefirst element of the list
- 元组
tinytuple = (123, 'john') 元组可以被认为是只读的列表。
- 字典
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}print dict['one'] # Prints value for 'one' keyprint dict[2] # Prints value for 2 keyprint tinydict # Prints complete dictionaryprint tinydict.keys() # Prints all the keysprint tinydict.values() # Prints all the values
三引号让程序员从引号和特殊字符串的泥潭里面解脱出来;
一个典型的用例是,处理HTML或者SQL
cursor.execute(''' CREATE TABLE users ( login VARCHAR(8), uid INTEGER, prid INTEGER) ''')
内嵌 if...elif...else 结构
if expression1:statement(s)elif expression2:statement(s)else:statement(s)
while 循环
while expression:statement(s)单行while子句的例子:while expression : statement
for 循环
for iterating_var in sequence:statements(s)
例子:
fruits = ['banana', 'apple', 'mango']for index in range(len(fruits)):print ('Current fruit :', fruits[index])for fruit in fruits:print ('Current fruit :', fruit)
range
- >>> range(1,5) #代表从1到5(不包含5)
[1, 2, 3, 4]>>> range(1,5,2) #代表从1到5,间隔2(不包含5)[1, 3]>>> range(5) #代表从0到5(不包含5)[0, 1, 2, 3, 4]
break 语句、continue 语
pass 语句:空操作;在执行时什么也不会发生
函数
def functionname( parameters ):function_suitereturn [expression]
例子:
def functionname( parameters ):a = parameters+' world'return aprint (functionname('hello'))
不定长参数
加了星号(*)的变量名会存放所有未命名的变量参数。选择不多传参数也可。如下实例:
def printinfo( arg1, *vartuple ):print arg1for var in vartuple:print varreturn;printinfo( 10 );printinfo( 70, 60, 50 );
类
class CUser:__Id = 0 # 私有变量Version = '1.0' # 公有变量"这里self参数就会告诉方法是哪个对象来调用的.这称为实例引用"def __init__(self,id,name):self.__Id = idself.Name = namedef get_version(self):return self.Version"self代表类的实例,而非类[同this]"def set_name(this,new_name):this.Name = new_name"调用user.print_dict(),实际是CUser.print_dict(user),也就是说把self替换成类的实例"def print_dict(self):print (self.__dict__)"如果不需要使用self参数可以不用self : CUser.print_class2()"def print_class():print (__class__)user = CUser(1,'hz')user.set_name('new hz')print (user.Name)CUser.print_class()user.print_dict() #内置属性print (user.get_version()) #自定义属性:__Id\Name\Version
执行结果
new hz<class '__main__.CUser'>{'Name': 'new hz', 'Id': 1}1.0
内置类的属性
__dict__ : 字典包含类的命名空间。__doc__ : 类文档字符串,或者如果是None那么表示未定义。__name__: 类名__module__: 其中类定义的模块名称。此属性在交互模式为“__main__”。__bases__ : 一个可能为空的元组包含基类,其基类列表为出现的顺序。
销毁对象(垃圾回收)
Python的垃圾收集程序执行过程中运行,当一个对象的引用计数为零时被触发回收的内存块
类继承、重载
类似C++
import
导入模块;
import module1[, module2[,... moduleN]
从模块中导入一个指定的部分到当前命名空间中
from modname import name1[, name2[, ... nameN]]
打开和关闭文件
file object = open(file_name [, access_mode][, buffering])...fileObject.read([count]);fileObject.write(string);fileObject.close();
新建目录、删除目录、重命名文件和删除文件
os.mkdir("newdir")os.rmdir('dirname')os.rename(current_file_name, new_file_name)os.remove(file_name)
获取路径、切换路径
os.getcwd()os.chdir("newdir")
处理异常
try....except...else
raise [Exception [, args [, traceback]]]
例子:
class AiError(RuntimeError):def __init__(self,arg):self.arg = argtry:raise AiError("except AiError!")# raise "except"except AiError as e:print(e.arg)except:print("common except...")else:print("no except...")finally:print("alway execute!")
匹配VS搜索
Python的提供两种不同的原语操作基于正则表达式:
match匹配检查匹配仅在字符串的开头,而search检查匹配字符串中的任何地方(这是Perl并默认的情况)
re.match(pattern, string, flags=0)re.search
搜索和替换
sub(pattern, repl, string, max=0)
本文详细介绍了Python的基本数据类型,包括数字、字符串、列表、元组和字典的操作方法,并讲解了条件语句、循环语句、函数定义及类的使用。

174

被折叠的 条评论
为什么被折叠?



