-
筛法求素数python实现 - [Python代码|开发实例]
2009-10-23
# -*- coding: utf-8 -*- #筛法求素数 MAX = 1000 print(2, end=' ') aList = [] for i in range(0, MAX+1): aList.append(0) for i in range(3, MAX+1, 2): for j in range(i+i, MAX+1, i): aList[j] = 1 for i in range(3, MAX+1, 2): if(aList[i]==0): print(i, end=' ')
-
PyScripter是一个windows下的开源python集成开发环境。
最吸引人的地方在于其人性化的VS式界面,方便的路径管理与编辑视图,当然,最重要的是调试功能。应该算是一个功能比较全的IDE了,可以作为IDLE的良好补充。
下载地址:http://code.google.com/p/pyscripter/
另外使用python时发现其对于uft-8格式似乎不能正确检测,我发现的解决办法是在文件第一行加上
# -*- coding: utf-8 -*-
这也是python官方文档中提到的写法
-
计算从1到n的自然数中有多少个数字1 - [Python代码|开发实例]
2009-10-23
题目:计算从1到n的自然数中有多少个数字1,例如10包含一个"1",而110则包含两个"1"
#计算从1到n的自然数中数字1的个数 g_count = 0 for i in range(1,100000): g_count = g_count + str(i).count('1') if(i==9 or i==99 or i==999 or i==9999 or i==99999): print('从1到%d共有%d个数字1' % (i,g_count))
-
Python多线程应用(一)——创建线程 - [Python代码|开发实例]
2009-10-12
#python多线程应用(一)——创建线程 import threading from time import sleep def test_func(id): for i in range(0,5): sleep(1) print('thread %d is running %d' % (id,i)) threads = [] for i in range(0,3): t = threading.Thread(target=test_func, args=(i,)) threads.append(t) for t in threads: t.start() for t in threads: t.join()
-
python输出各位有效数字|global变量 - [Python代码|开发实例]
2009-10-12
程序功能:输入为一个整数,调用APfirst输出第一位有效数字,每调用APnext输出下一位有效数字
#用python找有效数字的问题 g_count = 0 def APfirst(num): global g_count g_count = 0 return int(str(num)[0]) def APnext(num): global g_count if(g_count < len(str(num))-1): g_count = g_count + 1 return int(str(num)[g_count]) input_num = 1234567890 print(APfirst(input_num)) for i in range(0,11): print(APnext(input_num)) print(APfirst(input_num)) print(APnext(input_num))
-
python排序|key函数|自定义排序 - [Python代码|开发实例]
2009-10-10
python本身提供了排序功能,其排序算法是稳定的,即key相等的两项在排序后的先后次序不变
下面通过list.sort来演示一下如何通过key函数来进行自定义的排序
所谓的key函数,就是以参加排序的每一项作为输入,而输出则为用来排序的key值
#python list 排序 def my_key1(x): return x % 10 aList = [4, 5, 1, 2, 12, 34, 56, 9 ,80] aList.sort() #默认按升序排列 print(aList) aList.sort(reverse = True) #按降序排列 print(aList) aList.sort(key = my_key1) #根据key函数,按照个位数进行升序排列 print(aList) def my_key2(x): return x[1] aList = [(4,'ab'), (56,'c'), (1,'bb'), (102, 'a')] aList.sort(key = my_key2) #按照每个元组的第2分量,即字符串排序 print(aList)
-
Python算24点代码 - [Python代码|开发实例]
2009-10-08
下面的代码通过算24的算法演示了python的函数定义和调用的方法
# 算24程序 import math PRECISION = 1E-6 COUNT_OF_NUMBER = 4 NUMBER_TO_BE_CAL = 24 g_number = [4, 4, 7, 7] g_expression = ['', '', '', ''] for i in range(0, 4): g_expression[i] = "%d" % g_number[i] print(g_expression)
-
python文件处理|目录遍历|删除|添加 - [Python代码|开发实例]
2009-10-07
文件的遍历、删除和添加是最常用的文件命令,利用python的系统接口,我们可以很容易的实现这些功能
# python文件处理 import os MAX_DEPTH = 2 def traversal(path, depth): if( MAX_DEPTH == depth): return else: dirList = os.listdir(path) for it in dirList: if(os.path.isdir(path+'\\'+it)): print(it) traversal(path+'\\'+it,depth+1) else: print(' '*depth + it) traversal('c:\\Program Files',1) # 遍历c:\\Program Files目录,最大深度为MAX_DEPTH # 创建一个目录,并在目录下创建两个空文件 bFlag = True if(bFlag): sDir = 'c:\\python_test' os.mkdir(sDir) fp = open(sDir + '\\1.dat', 'w') fp.close() fp = open(sDir + '\\2.dat', 'w') fp.close() def delTree(path): # 删除目录及下面的所有文件 dirList = os.listdir(path) for it in dirList: if(os.path.isdir(path+'\\'+it)): delTree(path+'\\'+it) else: os.remove(path+'\\'+it) os.rmdir(path) delTree('c:\\python_test')
-
Python读取浮点数|读文本文件 - [Python代码|开发实例]
2009-10-05
从文本文件中读入浮点数据,是最常见的任务之一,python没有scanf这样的输入函数,但我们可以利用正规表达式从读入的字符串中提取出浮点数
import re fp = open('c:/1.txt', 'r') s = fp.readline() print(s) aList = re.findall('([-+]?\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?',s) #使用正规表达式搜索字符串 print(aList) for ss in aList: print(ss[0]+ss[2]) aNum = float((ss[0]+ss[2])) print(aNum) fp.close()
-
Python读取整数|读取文本文件 - [Python代码|开发实例]
2009-10-04
这个代码演示了如何从文件中按行读入字符串,并利用正规表达式从中提取出整数
# python读入整数 import re fp = open('c:/2.txt', 'r') s = fp.readline() print(s) aList = re.findall('[-+]?\d+',s) #使用正规表达式搜索字符串 print(aList) for ss in aList: print(ss) aNum = int(ss) print(aNum) fp.close()








