python学习数据结构实例代码(精选10篇)
1.python学习数据结构实例代码 篇一
-11-11SublimeText 2编译python出错的解决方法(The system cannot fin
-02-02使用python将mdb数据库文件导入postgresql数据库示例
2014-02-02python基础教程之popen函数操作其它程序的输入和输出示例
2014-04-04Python中的map、reduce和filter浅析
2014-06-06win7 下搭建sublime的python开发环境的配置方法
-09-09rhythmbox中文名乱码问题解决方法
2014-05-05Python获取远程文件大小的函数代码分享
2014-02-02python类参数self使用示例
2008-09-09Python 可爱的大小写
2014-03-03python基础教程之元组操作使用详解
2.Python实现线程池代码 篇二
这篇文章主要介绍了Python实现线程池代码分享,本文直接给出实例代码,需要的朋友可以参考下
原理:建立一个任务队列,然多个线程都从这个任务队列中取出任务然后执行,当然任务队列要加锁,详细请看代码
import threadingimport timeimport signalimport os class task_info(object): def __init__(self): self.func = None self.parm0 = None self.parm1 = None self.parm2 = None class task_list(object): def __init__(self): self.tl = [] self.mutex = threading.Lock self.sem = threading.Semaphore(0) def append(self, ti): self.mutex.acquire() self.tl.append(ti) self.mutex.release() self.sem.release() def fetch(self): self.sem.acquire() self.mutex.acquire() ti = self.tl.pop(0) self.mutex.release() return ti class thrd(threading.Thread): def __init__(self, tl): threading.Thread.__init__(self) self.tl = tl def run(self): while True:tsk = self.tl.fetch()tsk.func(tsk.parm0, tsk.parm1, tsk.parm2) class thrd_pool(object): def __init__(self, thd_count, tl): self.thds = [] for i in range(thd_count):self.thds.append(thrd(tl)) def run(self): for thd in self.thds:thd.start() def func(parm0=None, parm1=None, parm2=None): print ‘count:%s, thrd_name:%s‘%(str(parm0), threading.currentThread().getName()) def cleanup(signo, stkframe): print (‘Oops! Got signal %s‘, signo)os._exit(0) if __name__ == ‘__main__‘: signal.signal(signal.SIGINT, cleanup) signal.signal(signal.SIGQUIT, cleanup) signal.signal(signal.SIGTERM, cleanup) tl = task_list() tp = thrd_pool(6, tl) tp.run() count = 0 while True: ti = task_info() ti.parm0 = count ti.func = func tl.append(ti) count += 1 time.sleep(2) pass
3.python学习数据结构实例代码 篇三
-02-02python使用rabbitmq实现网络爬虫示例
2014-01-01python使用paramiko模块实现ssh远程登陆上传文件并执行
2014-06-06win7 下搭建sublime的python开发环境的配置方法
-09-09Python 字符串中的字符倒转
-12-12python算法学习之桶排序算法实例(分块排序)
2014-01-01python使用scrapy解析js示例
-04-04用python实现的可以拷贝或剪切一个文件列表中的所有文件
2014-02-02python基础教程之popen函数操作其它程序的输入和输出示例
4.python学习数据结构实例代码 篇四
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
/*
* 这里将json的转化和解析都放在一起了,大家可以根据实际需要来转化json字符串和解析json字符串
*/
public class TestFastJson {
static class Person{
private String id ;
private String name;
private int age ;
public Person{
}
public Person(String id,String name,int age){
this.id=id;
this.name=name;
this.age=age;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return “Person [age=” + age + “, id=” + id + “, name=” + name + “]”;
}
}
public static void main(String[] args) {
method1();
method2();
method3();
method4();
}
static void method1(){
System.out.println(“javabean转化示例开始----------”);
Person person = new Person(“1”,“fastjson”,1);
//这里将javabean转化成json字符串
String jsonString = JSON.toJSONString(person);
System.out.println(jsonString);
//这里将json字符串转化成javabean对象,
person =JSON.parseObject(jsonString,Person.class);
System.out.println(person.toString());
System.out.println(“javabean转化示例结束----------”);
}
static void method2(){
System.out.println(“List转化示例开始----------”);
Person person1 = new Person(“1”,“fastjson1”,1);
Person person2 = new Person(“2”,“fastjson2”,2);
List
persons = new ArrayList
();
persons.add(person1);
persons.add(person2);
String jsonString = JSON.toJSONString(persons);
System.out.println(“json字符串:”+jsonString);
//解析json字符串
List
persons2 = JSON.parseArray(jsonString,Person.class);
//输出解析后的person对象,也可以通过调试模式查看persons2的结构
System.out.println(“person1对象:”+persons2.get(0).toString());
System.out.println(“person2对象:”+persons2.get(1).toString());
System.out.println(“List转化示例结束----------”);
}
static void method3(){
System.out.println(“List转化示例开始----------”);
Listlist = new ArrayList();
list.add(“fastjson1”);
list.add(“fastjson2”);
list.add(“fastjson3”);
String jsonString = JSON.toJSONString(list);
System.out.println(“json字符串:”+jsonString);
//解析json字符串
Listlist2 = JSON.parseObject(jsonString,new TypeReference
>(){});
System.out.println(list2.get(0)+“::”+list2.get(1)+“::”+list2.get(2));
System.out.println(“List转化示例结束----------”);
}
static void method4(){
System.out.println(“ List>转化示例开始 ----------”);
Mapmap = new HashMap();
map.put(“key1”, “value1”);
map.put(“key2”, “value2”);
Mapmap2 = new HashMap();
map2.put(“key1”, 1);
map2.put(“key2”, 2);
List> list = new ArrayList>();
list.add(map);
list.add(map2);
String jsonString = JSON.toJSONString(list);
System.out.println(“json字符串:”+jsonString);
//解析json字符串
List> list2 = JSON.parseObject(jsonString,new TypeReference
>>(){});
System.out.println(“map的key1值”+list2.get(0).get(“key1”));
System.out.println(“map的key2值”+list2.get(0).get(“key2”));
System.out.println(“ma2p的key1值”+list2.get(1).get(“key1”));
System.out.println(“map2的key2值”+list2.get(1).get(“key2”));
}
5.python映射列表实例分析 篇五
列表映射是个非常有用的方法,通过对列表的每个元素应用一个函数来转换数据,可以使用一种策略或者方法来遍历计算每个元素。
例如:
代码如下:
params = {”server“:”mpilgrim“,
”database“:”master“,
”uid“:”sa“,
”pwd“:”secret“
}
print [”%s=%s“ % (k, params[k]) for k in params.keys()]
print ‘;‘.join([”%s=%s" % (k, params[k]) for k in params.keys()])
返回结果为:
代码如下:
[‘uid=sa‘, ‘pwd=secret‘, ‘database=master‘, ‘server=mpilgrim‘]
还可以改进下,把元组转化成字符串,使用join函数方法。
代码如下:
‘uid=sa;pwd=secret;database=master;server=mpilgrim‘
(join函数不仅使用于元组还使用于列表,功能是字符串化)
split跟join相反,把字符串转换成元组
看如下应用
代码如下:
str = ‘server=mpilgrim;uid=sa;database=master;pwd=secret‘>>> str.split(‘;‘)
[‘server=mpilgrim‘, ‘uid=sa‘, ‘database=master‘, ‘pwd=secret‘]
>>> str.split(‘;‘, 1)
[‘server=mpilgrim‘, ‘uid=sa;database=master;pwd=secret‘]
>>> str.split(‘;‘, 2)
[‘server=mpilgrim‘, ‘uid=sa‘, ‘database=master;pwd=secret‘]
列表映射用例:
代码如下:
>>>> li = [1, 9, 8, 4]
>>> [elem*2 for elem in li] 1
[2, 18, 16, 8]
>>> li
[1, 9, 8, 4]
6.Python函数返回值实例分析 篇六
这篇文章主要介绍了Python函数返回值,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
本文实例讲述了Python的函数返回值用法,分享给大家供大家参考。具体分析如下:
最近学一些Python的基本用法,看到定义函数,发现似乎只能返回一个返回值,想想matlab里返回多个返回值多方便啊,网上查了查,看到有返回多个值的方法。
python 函数返回值有两种形式:
1 返回一个值。
2 返回多个值,
现看看返回一个值的吧。
def firstvalue(a,b): c = a + b return cprint firstvalue(1,2) #结果:3
再看看返回多个值的: 那怎么可以返回多个值呢,其他的语言一般调用函数的话,只能返回一个值,可能我不太熟悉所有的语言,我知道的语言只能返回一个值,而python可以返回多个值,感觉非常方便,发代码看下:
def secondvalue(a,b): c = a + b return (a,b,c)x,y,z = secondvalue(1,2)print ‘x:‘,x,‘y:‘,y,‘z:‘,z
7.python学习数据结构实例代码 篇七
代码如下:
class Person:
def __init__(self):
self.__name = ‘haha‘#私有属性
self.age = 22
def __get_name(self):##私有方法
return self.__name
def get_age(self):
return self.age
person = Person()
print person.get_age()
print person.__get_name()
运行结果是:22 Traceback (most recent call last): File “E:pythonerzenghejay.py”, line 38, in print person.__get_name() AttributeError: Person instance has no attribute ‘__get_name‘
我们这里定义的__name是私有属性,__get_name()是私有方法,
如果直接访问的话,会提示找不到相关的属性或者方法,但是如果你真要访问私有的相关数据的话, 也是可以访问的,严格地说,私有方法在它们的类外是可以访问的,只是不容易 处理。在 Python 中没有什么是真正私有的;在内部,私有方法和属性的名字被忽然改变和恢复,以致于使得它们看上去用它们给定的名字是无法使用的
8.Python字符串替换实例分析 篇八
这篇文章主要介绍了Python字符串替换的方法,实例对比分析了单个字符替换与字符串替换的相关技巧,非常简单实用,需要的朋友可以参考下
本文实例讲述了Python字符串替换的方法,分享给大家供大家参考。具体如下:
单个字符替换
s = ‘abcd‘a = [”a“, ”b“, ”c“]b = [”c“, ”d“, ”e“]import strings.translate(string.maketrans(‘‘.join(a),‘‘.join(b)))print s
输出结果为:abcd
字符串替换,改善版
s = ”hello, i‘m mouren, hehe~~,hehe~~mourenmouren“a = [”mouren“, ”hehe“]b = [”mr“, ”hoho"]import redic = dict(zip(a,b))pattern = re.compile(‘(‘ + ‘|‘.join(a) + ‘)‘)s = pattern.sub(lambda a:dic[a.group()], s)print s
输出结果为:hello, i‘m mr, hoho~~,hoho~~mrmr
希望本文所述对大家的Python程序设计有所帮助,
★ python轻松实现代码编码格式转换
★ python 查找文件夹下所有文件 实现代码
★ python学习之操作mysql
★ 巧用WPS的“查找和替换”来提高工作效率
★ InDesign的文字快速查找替换编辑技巧
★ 编码实现字符串转整型的函数
★ SQL 中自己创建函数,分割字符串数据库教程
★ Python 随机生成中文验证码的实例代码
★ asp实现读取数据库输出json代码
9.python学习数据结构实例代码 篇九
利用python轻松玩转Excel,完成数据分析与统计,学习心
得分享
写在前面这是我学习python写的第一个完整的脚本过程大概是从一头懵逼,到满是问题,再到一个个解决问题我没有系统的学习过python阻碍我的问题是什么,我就学什么这里尤为重要的一点,就是需要清楚的知道自己需要什么对于一个初学者来说,这真的是很难有时候就算知道自己需要什么,也不知道该如何准确的表达这是一个极为让人迷茫和不知所措的过渡时期个人的总结有明确的目标将大目标分解成最小颗粒的小目标针对小目标,一个个去解决举例目标:有一份市面上主流机型使用某APP的兼容性测试报告,包括了详细的手机信息,其中报告中“日志包”这一列是一个超链接,可以访问下载一个ZIP日志包,现需要检查每一个日志文件里是否包含事先埋点的信息,并根据需要生成一份报告目标分解:打开excel测试报告访问“日志包”这一列的超链接,下载ZIP文件解压ZIP文件,得到log文件利用正则表达式,在log文件里查找埋点信息,返回查找结果提取当前行其它需要的信息生成最终结果文件实现脚本动态打印处理进度结果文件源码获取方式私信“数据分析与统计”源码与兼容性报告
10.python学习数据结构实例代码 篇十
2014-04-04python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子
-11-11python单链表实现代码实例
2013-11-11Python urllib模块urlopen()与urlretrieve()详解
2014-02-02python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签
2014-04-04Python下的Mysql模块MySQLdb安装详解
2014-01-01python使用 api上传图片到微博示例
-10-10python 不关闭控制台的实现方法
2013-02-02python创建只读属性对象的方法(ReadOnlyObject)
【python学习数据结构实例代码】推荐阅读:
python学习总结及体会09-13
使用PYTHON发送多播数据Unix系统11-25
python语法汇总06-12
python基础总结01-16
桥梁结构计算学习心得10-14
结构学习心得体会11-05
oracle数据库学习心得10-17
数据库课程的学习心得01-25