在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
python文件中未引入其他包、模块 以下方法不适用于pyhton 文件有第三方包、模块,有第三方包,模块的实现方法,请戳这里→https://www.cnblogs.com/zhuanjiao/p/12007176.html 一、安装IronPython包,使用的是2.7.5版本
二、源码 2.1 python 源码,实现一个快速排序功能 def quickSort(lyst): quickSortHelper(lyst, 0, len(lyst) - 1) return lyst def quickSortHelper(lyst, left, right): if left < right: pivotLocation = partition(lyst, left, right) quickSortHelper(lyst, left, pivotLocation - 1) quickSortHelper(lyst, pivotLocation + 1, right) def swap(lst, i, j): temp = lst[i] lst[i] = lst[j] lst[j] = temp def partition(lyst, left, right): middle = (left + right) // 2 pivot = lyst[middle] lyst[middle] = lyst[right] lyst[right] = pivot boundary = left for index in range(left, right): if lyst[index] < pivot: swap(lyst, index, boundary) boundary += 1 swap(lyst, right, boundary) return boundary 2.2 C#源码 using IronPython.Hosting; using Microsoft.Scripting.Hosting; namespace TestClass { public class CSharpCallPython { public int[] Sort(int[] arr) { string path = @"D:\PyCharm\source\Study\test.py"; ScriptRuntime pyRuntime = Python.CreateRuntime(); dynamic py = pyRuntime.UseFile(path); return py.quickSort(arr); } } } var arr = new CSharpCallPython().Sort(new int[] { 45, 12, 87, 2, 204, 3 }); foreach (var item in arr) { Console.WriteLine(item); } Console.ReadLine();
执行结果:
|
请发表评论