python范例
⑴ python for循环生成列表的实例
Python for循环生成列表的实例
一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句:
featList = [example[i] for example in dataSet]
classList = [example[-1] for example in dataSet]
多方研究和询问,得到如下解释:
语句featList = [example[i] for example in dataSet]作用为:
将dataSet中的数据按行依次放入example中,然后取得example中的example[i]元素,放入列表featList中
语句classList = [example[-1] for example in dataSet]作用为:
将dataSet中的数据按行依次放入example中,然后取得example中的example[-1]元素,放入列表classList中
总而言之,类似上述两种for循环形式可以很方便地用来创建列表,如下例:
list_0 = [x*x for x in range(5)]
print(list_0)
#输出:
#[0, 1, 4, 9, 16]
以上这篇Python for循环生成列表的实例就是小编分享给大家的全部内容了
⑵ Python数据结构之Array用法实例
Python数据结构之Array用法实例
这篇文章主要介绍了Python数据结构之Array用法实例,较为详细的讲述了Array的常见用法,具有很好的参考借鉴价值,需要的朋友可以参考下
import ctypes
class Array:
def __init__(self, size):
assert size > 0, "Array size must be > 0 "
self._size = size
pyArrayType = ctypes.py_object * size
self._elements = pyArrayType()
self.clear(None)
def clear(self, value):
for index in range(len(self)):
self._elements[index] = value
def __len__(self):
return self._size
def __getitem__(self, index):
assert index >= 0 and index < len(self), "index must >=0 and <= size"
return self._elements[index]
def __setitem__(self, index, value):
assert index >= 0 and index < len(self), "index must >=0 and <= size"
self._elements[index] = value
def __iter__(self):
return _ArrayIterator(self._elements)
class _ArrayIterator:
def __init__(self, theArray):
self._arrayRef = theArray
self._curNdr = 0
def __next__(self):
if self._curNdr < len(theArray):
entry = self._arrayRef[self._curNdr]
sllf._curNdr += 1
return entry
else:
raise StopIteration
def __iter__(self):
return self
class Array2D :
def __init__(self, numRows, numCols):
self._theRows = Array(numCols)
for i in range(numCols):
self._theRows[i] = Array(numCols)
def numRows(self):
return len(self._theRows)
def numCols(self):
return len(self._theRows[0])
def clear(self, value):
for row in range(self.numRows):
self._theRows[row].clear(value)
def __getitem__(self, ndxTuple):
assert len(ndxTuple) == 2, "the tuple must 2"
row = ndxTuple[0]
col = ndxTuple[1]
assert row>=0 and row <len(self.numRows())
and col>=0 and col<len(self.numCols),
"array subscrpt out of range"
theArray = self._theRows[row]
return theArray[col]
def __setitem__(self, ndxTuple, value):
assert len(ndxTuple)==2, "the tuple must 2"
row = ndxTuple[0]
col = ndxTuple[1]
assert row >= 0 and row < len(self.numRows)
and col >= 0 and col < len(self.numCols),
"row and col is invalidate"
theArray = self._theRows[row];
theArray[col] = value
希望本文所述对大家的Python程序设计有所帮助。
⑶ Python冒泡排序注意要点实例详解
Python冒泡排序注意要点实例详解
文给大家介绍了python冒泡排序知识,涉及到冒泡排序主要的细节问题,本文通过实例代码给大家讲解,介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧
冒泡排序注意三点:
1. 第一层循环可不用循环所有元素。
2.两层循环变量与第一层的循环变量相关联。
3.第二层循环,最终必须循环集合内所有元素。
示例代码一:
1.第一层循环,只循环n-1个元素。
2.当第一层循环变量为n-1时,第二层循环所有元素。
s = [3, 4, 1, 6, 2, 9, 7, 0, 8, 5]
# bubble_sort
for i in range(0, len(s) - 1):
for j in range(i + 1, 0, -1):
if s[j] < s[j - 1]:
s[j], s[j - 1] = s[j - 1], s[j]
for m in range(0, len(s)):
print(s[m])
示例代码二:
1.第一层循环所有元素。
2.第二层也循环所有元素。
s = [3, 4, 1, 6, 2, 9, 7, 0, 8, 5]
for i in range(0, len(s)):
for j in range(i, 0, -1):
if s[j] < s[j - 1]:
s[j], s[j - 1] = s[j - 1], s[j]
for m in range(0, len(s)):
print(s[m])
以上所述是小编给大家介绍的python冒泡排序算法注意要点,希望对大家有所帮助
⑷ python什么是类,对象,实例
类和对象
对象是什么?
对象=属性(静态)+方法(动态);
属性一般是一个个变量;方法是一个个函数;
#类的属性 就是 类变量
#实例变量:定义在方法中的变量,只作用于当前实例的类。
例子:
class Turtle:#python 中类名约定以大写字母开头
'''关于类的简单例子。。。'''
#属性 == 类变量
color ="green"
weight="10kg"
legs=4
shell=True
mouth='big'
#方法
def climb(self):
self.name = "test" #实例变量:定义在方法中的变量,只作用于当前实例的类。
print("我在很努力爬。")
def run(self):
print('我在很努力跑。')
def bite(self):
print('我要要要要要')
def sleep(self):
print('我要睡觉啦。')
#创建一个实例对象也就是类的实例化!
tt =Turtle() #类的实例化,也就是创建一个对象,类名约定大写字母开头
tt.bite() #创建好类后就能调用类里面的方法叻;
tt.sleep()
⑸ Python随机读取文件实现实例
Python随机读取文件实现实例
这篇文章主要介绍了Python随机读取文件的相关资料,需要的朋友可以参考下
Python随机读取文件
代码如下
importosimportrandom rootdir="d:facetrain"file_names=[]forparent, dirnames, filenamesinos.walk(rootdir): #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字 file_names=filenames # for filename in filenames: #输出文件信息 # print("parent is" + parent) # print("filename is:" + filename) # print("the full name of the file is:" + os.path.join(parent, filename))x=random.randint(0,len(file_names)-1)print(file_names[x])
注意
1.本代码在Python3.5上测试通过
2.rootdir参数意为你要遍历的那个文件夹的目录,请根据自己的实际需要自行修改
⑹ Python输出带颜色的字符串实例
Python输出带颜色的字符串实例
输出带颜色的字符串,用来显示要突出的部分。经测验,在pycharm中可行,在windows命令行中不可行。原因未知。
方法:
格式:"033[显示方式;前景色;背景色m 需要变颜色的字符串 033[显示方式m"例子:"033[1;31;47m 需要变颜色的字符串 033[0m"<1-高亮显示 31前景色红色 47背景色黑色--需要变颜色的字符串--0-取消颜色设置>说明:前景色 背景色 颜色--------------------------------------- 40 黑色 41 红色 42 绿色 43 黄色 44 蓝色 45 紫红色 46 青蓝色 47 白色显示方式 意义------------------------- 终端默认设置(即取消颜色设置) 高亮显示 使用下划线 闪烁 反白显示 不可见
测试:
print("033[1;31;40m需要变颜色的字符串033[0m")
结果:
以上这篇Python输出带颜色的字符串实例就是小编分享给大家的全部内容了
⑺ 关于python的实例方法问题
题主你好,
python中创建新实例的时候, 如果相应的类中定义了__init__()方法的话, 会自动调用这个方法. 你可能认为名称"init"和"__init__"差不多, 但计算机其实是个很笨的东西, 它会完全按照设计去执行. 也就是说,在设计的时候就已经定死了, 默认情况下, 创建新实例的时候, 会自动调用类中定义的__init__()方法, 只要你的方法名和__init__有一点不一样也不行.
下图是我在官网上找的关于__init__()调用的简单说明:
高亮部分说的大概意思就是上面讲的,如果相应类中定义了__init__()方法,则在创建该类实例的时候会自动调用里面定义的__init__()方法.
-----
希望可以帮到题主, 欢迎追问.
⑻ python递归算法经典实例有哪些
程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法。
它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。
递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。
Python
是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。