快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

云函数Python实例的简单介绍

python中plt.post是什么函数

2018-05-04 11:11:36

创新互联公司专注于临川网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供临川营销型网站建设,临川网站制作、临川网页设计、临川网站官网定制、成都微信小程序服务,打造临川网络公司原创品牌,更为您提供临川网站排名全网营销落地服务。

122点赞

qiurisiyu2016

码龄7年

关注

matplotlib

1、plt.plot(x,y)

plt.plot(x,y,format_string,**kwargs) 

x轴数据,y轴数据,format_string控制曲线的格式字串 

format_string 由颜色字符,风格字符,和标记字符

import matplotlib.pyplot as plt

plt.plot([1,2,3,6],[4,5,8,1],’g-s’) 

plt.show()

结果

**kwards: 

color 颜色 

linestyle 线条样式 

marker 标记风格 

markerfacecolor 标记颜色 

markersize 标记大小 等等 

plt.plot([5,4,3,2,1])   

plt.show()

结果

plt.plot([20,2,40,6,80])   #缺省x为[0,1,2,3,4,...]

plt.show()

结果

plt.plot()参数设置

Property Value Type

alpha 控制透明度,0为完全透明,1为不透明

animated [True False]

antialiased or aa [True False]

clip_box a matplotlib.transform.Bbox instance

clip_on [True False]

clip_path a Path instance and a Transform instance, a Patch

color or c 颜色设置

contains the hit testing function

dash_capstyle [‘butt’ ‘round’ ‘projecting’]

dash_joinstyle [‘miter’ ‘round’ ‘bevel’]

dashes sequence of on/off ink in points

data 数据(np.array xdata, np.array ydata)

figure 画板对象a matplotlib.figure.Figure instance

label 图示

linestyle or ls 线型风格[‘-’ ‘–’ ‘-.’ ‘:’ ‘steps’ …]

linewidth or lw 宽度float value in points

lod [True False]

marker 数据点的设置[‘+’ ‘,’ ‘.’ ‘1’ ‘2’ ‘3’ ‘4’]

markeredgecolor or mec any matplotlib color

markeredgewidth or mew float value in points

markerfacecolor or mfc any matplotlib color

markersize or ms float

markevery [ None integer (startind, stride) ]

picker used in interactive line selection

pickradius the line pick selection radius

solid_capstyle [‘butt’ ‘round’ ‘projecting’]

solid_joinstyle [‘miter’ ‘round’ ‘bevel’]

transform a matplotlib.transforms.Transform instance

visible [True False]

xdata np.array

ydata np.array

zorder any number

确定x,y值,将其打印出来

x=np.linspace(-1,1,5)

y=2*x+1

plt.plot(x,y)

plt.show()

2、plt.figure()用来画图,自定义画布大小

fig1 = plt.figure(num='fig111111', figsize=(10, 3), dpi=75, facecolor='#FFFFFF', edgecolor='#0000FF')

plt.plot(x,y1)           #在变量fig1后进行plt.plot操作,图形将显示在fig1中

fig2 = plt.figure(num='fig222222', figsize=(6, 3), dpi=75, facecolor='#FFFFFF', edgecolor='#FF0000')

plt.plot(x,y2)           #在变量fig2后进行plt.plot操作,图形将显示在fig2中

plt.show()

plt.close()

结果

fig1 = plt.figure(num='fig111111', figsize=(10, 3), dpi=75, facecolor='#FFFFFF', edgecolor='#0000FF')

plt.plot(x,y1)

plt.plot(x,y2)

fig2 = plt.figure(num='fig222222', figsize=(6, 3), dpi=75, facecolor='#FFFFFF', edgecolor='#FF0000')

plt.show()

plt.close()

结果:

3、plt.subplot(222)

将figure设置的画布大小分成几个部分,参数‘221’表示2(row)x2(colu),即将画布分成2x2,两行两列的4块区域,1表示选择图形输出的区域在第一块,图形输出区域参数必须在“行x列”范围                       ,此处必须在1和2之间选择——如果参数设置为subplot(111),则表示画布整个输出,不分割成小块区域,图形直接输出在整块画布上

plt.subplot(222) 

plt.plot(y,xx)    #在2x2画布中第二块区域输出图形

plt.show()

plt.subplot(223)  #在2x2画布中第三块区域输出图形

plt.plot(y,xx)

plt.subplot(224)  # 在在2x2画布中第四块区域输出图形

plt.plot(y,xx)

4、plt.xlim设置x轴或者y轴刻度范围

plt.xlim(0,1000)  #  设置x轴刻度范围,从0~1000         #lim为极限,范围

plt.ylim(0,20)   # 设置y轴刻度的范围,从0~20

5、plt.xticks():设置x轴刻度的表现方式

fig2 = plt.figure(num='fig222222', figsize=(6, 3), dpi=75, facecolor='#FFFFFF', edgecolor='#FF0000')

plt.plot(x,y2)

plt.xticks(np.linspace(0,1000,15,endpoint=True))  # 设置x轴刻度

plt.yticks(np.linspace(0,20,10,endpoint=True))

结果

6、ax2.set_title('xxx')设置标题,画图

#产生[1,2,3,...,9]的序列

x = np.arange(1,10)

y = x

fig = plt.figure()

ax1 = fig.add_subplot(221)

#设置标题

ax1.set_title('Scatter Plot1')

plt.xlabel('M')

plt.ylabel('N')

ax2 = fig.add_subplot(222)

ax2.set_title('Scatter Plot2clf')

#设置X轴标签

plt.xlabel('X')           #设置X/Y轴标签是在对应的figure后进行操作才对应到该figure

#设置Y轴标签

plt.ylabel('Y')

#画散点图

ax1.scatter(x,y,c = 'r',marker = 'o')          #可以看出画散点图是在对figure进行操作

ax2.scatter(x,y,c = 'b',marker = 'x')

#设置图标

plt.legend('show picture x1 ')

#显示所画的图

plt.show()

结果

7、plt.hist()绘制直方图(可以将高斯函数这些画出来)

绘图都可以调用matplotlib.pyplot库来进行,其中的hist函数可以直接绘制直方图

调用方式:

n, bins, patches = plt.hist(arr, bins=10, normed=0, facecolor='black', edgecolor='black',alpha=1,histtype='bar')

hist的参数非常多,但常用的就这六个,只有第一个是必须的,后面四个可选

arr: 需要计算直方图的一维数组

bins: 直方图的柱数,可选项,默认为10

normed: 是否将得到的直方图向量归一化。默认为0

facecolor: 直方图颜色

edgecolor: 直方图边框颜色

alpha: 透明度

histtype: 直方图类型,‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’

返回值 :

n: 直方图向量,是否归一化由参数normed设定

bins: 返回各个bin的区间范围

patches: 返回每个bin里面包含的数据,是一个list

from skimage import data

import matplotlib.pyplot as plt

img=data.camera()

plt.figure("hist")

arr=img.flatten()

n, bins, patches = plt.hist(arr, bins=256, normed=1,edgecolor='None',facecolor='red')  

plt.show()

例:

mu, sigma = 0, .1

s = np.random.normal(loc=mu, scale=sigma, size=1000)

a,b,c = plt.hist(s, bins=3)

print("a: ",a)

print("b: ",b)

print("c: ",c)

plt.show()

结果:

a:  [ 85. 720. 195.]         #每个柱子的值

b:  [-0.36109509 -0.1357318   0.08963149  0.31499478]   #每个柱的区间范围

c:  a list of 3 Patch objects       #总共多少柱子

8、ax1.scatter(x,y,c = 'r',marker = 'o') 

使用注意:确定了figure就一定要确定象限,然后用scatter,或者不确定象限,直接使用plt.scatter

x = np.arange(1,10)

y = x

fig = plt.figure()

a=plt.subplot()            #默认为一个象限

# a=fig.add_subplot(222)

a.scatter(x,y,c='r',marker='o')

plt.show()

结果

x = np.arange(1,10)

y = x

plt.scatter(x,y,c='r',marker='o')

plt.show()

结果

import numpy as np

import matplotlib.pyplot as plt

x = np.arange(1,10)

y = x

plt.figure()

plt.scatter(x,y,c='r',marker='o')

plt.show()

结果

文章知识点与官方知识档案匹配

Python入门技能树基础语法函数

211242 人正在系统学习中

打开CSDN APP,看更多技术内容

plt的一些函数的使用_班花i的博客_plt函数

plt.函数 Fwuyi的博客 6513 1plt.figure( )函数:创建画布 2plt.plot(x, y, format_string, label="图例名"):绘制点和线, 并控制样式。 其中x是x轴数据,y是y轴数据,xy一般是列表和数组。format_string 是字符串的格式包括线...

继续访问

Python的数据科学函数包(三)——matplotlib(plt)_hxxjxw的博客...

import matplotlib.pyplot as plt plt.imshow(img) plt.show() plt.imshow()有一个cmap参数,即指定颜色映射规则。默认的cmap即颜料板是十色环 哪怕是单通道图,值在0-1之间,用plt.imshow()仍然可以显示彩色图,就是因为颜色映射的关...

继续访问

对Python中plt的画图函数详解

今天小编就为大家分享一篇对Python中plt的画图函数详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

plt.plot()函数详解

plt.plot()函数详细介绍 plt.plot(x, y, format_string, **kwargs) 参数 说明 x X轴数据,列表或数组,可选 y Y轴数据,列表或数组 format_string 控制曲线的格式字符串,可选 **kwargs 第二组或更多(x,y,format_string),可画多条曲线 format_string 由颜色字符、风格字符、标记字符组成 颜色字符 'b' 蓝色 'm' 洋红色 magenta 'g' 绿色 'y.

继续访问

python图像处理基础知识(plt库函数说明)_小草莓爸爸的博客_p...

1.画图(plt库)1.1 plt.figure(num=’’,figsize=(x, y),dpi= ,facecolor=’’,edgecolor=’’)num:表示整个图标的标题 figsize:表示尺寸 facecolor:表示1.2 plt.plot(x,y,format_string,**kwargs)...

继续访问

plt的一些函数使用_neo3301的博客_plt函数

1、plt.plot(x,y) plt.plot(x,y,format_string,**kwargs) x轴数据,y轴数据,format_string控制曲线的格式字串 format_string 由颜色字符,风格字符,和标记字符 import matplotlib.pyplot as plt ...

继续访问

最新发布 python plt 绘图详解(plt.版本)

python plt绘图详解

继续访问

python图像处理基础知识(plt库函数说明)

import matplotlib.pyplot as plt的一些基础用法,包括直方图

继续访问

plt.subplot() 函数解析_Ensoleile。的博客_plt.subplot

plt.subplot()函数用于直接制定划分方式和位置进行绘图。 函数原型 subplot(nrows, ncols, index, **kwargs),一般我们只用到前三个参数,将整个绘图区域分成 nrows 行和 ncols 列,而 index 用于对子图进行编号。

继续访问

...中plt的画图函数_Ethan的博客的博客_python的plt函数

1、plt.legend plt.legend(loc=0)#显示图例的位置,自适应方式 说明: 'best' : 0, (only implemented for axes legends)(自适应方式) 'upper right' : 1, 'upper left' : 2, 'lower left' : 3, 'lower right' : 4, ...

继续访问

plt.函数

1 plt.figure( ) 函数:创建画布 2 plt.plot(x, y, format_string, label="图例名"):绘制点和线, 并控制样式。 其中x是x轴数据,y是y轴数据,xy一般是列表和数组。format_string 是字符串的格式包括线条颜色、点类型、线类型三个部分。向参数label传入图例名,使用plt.legend( )创建图例。 2.1 画一条含x、y的线条 import matplotlib.pyplot as plt x = [1, 2, 3, 4] y

继续访问

Python深度学习入门之plt画图工具基础使用(注释详细,超级简单)

Python自带的plt是深度学习最常用的库之一,在发表文章时必然得有图作为支撑,plt为深度学习必备技能之一。作为深度学习入门,只需要掌握一些基础画图操作即可,其他等要用到的时候看看函数API就行。 1 导入plt库(名字长,有点难记) import matplotlib.pyplot as plt 先随便画一个图,保存一下试试水: plt.figure(figsize=(12,8), dpi=80) plt.plot([1,2,6,4],[4,5,6,9]) plt.savefig('./plt_pn

继续访问

python画图plt函数学习_dlut_yan的博客_python plt

figure()函数可以帮助我们同时处理生成多个图,而subplot()函数则用来实现,在一个大图中,出现多个小的子图。 处理哪个figure,则选择哪个figure,再进行画图。 参考博客 importmatplotlib.pyplotaspltimportnumpyasnp x=np.arange(-1,1,0.1...

继续访问

plt.plot()函数_安之若醇的博客_plt.plot()函数

plt.plot()函数是matplotlib.pyplot用于画图的函数传一个值列表:import numpy as npimport matplotlib.pyplot as pltt=[1,2,3,4,5]y=[3,4,5,6,7]plt.plot(t, y)当x省略的时候,默认[0,1…,N-1]递增可以传元组也可以传...

继续访问

python画图plt函数学习

python中的绘图工具 :matplotli,专门用于画图。 一. 安装与导入 工具包安装:conda install matplotli 导入:import matplotlib.pyplot as plt 画图主要有:列表绘图;多图绘图;数组绘图 二. 列表绘图 1. 基础绘图:plt.plot;plt.show import matplotlib.pyplot as plt x = [1, 2, 3, 4] y = [1, 4, 9, 16] plt.plot(x, y) plt.show()

继续访问

python中plt的含义_对Python中plt的画图函数详解

1、plt.legendplt.legend(loc=0)#显示图例的位置,自适应方式说明:'best' : 0, (only implemented for axes legends)(自适应方式)'upper right' : 1,'upper left' : 2,'lower left' : 3,'lower right' : 4,'right' : 5,'cent...

继续访问

Python中plt绘图包的基本使用方法

其中,前两个输入参数表示x轴和y轴的坐标,plot函数将提供的坐标点连接,即成为要绘制的各式线型。常用的参数中,figsize需要一个元组值,表示空白画布的横纵坐标比;plt.xticks()和plt.yticks()函数用于设置坐标轴的步长和刻度。plt.xlabel()、plt.ylabel()和plt.title()函数分别用于设置x坐标轴、y坐标轴和图标的标题信息。的数据处理时,发现了自己对plt的了解和使用的缺失,因此进行一定的基础用法的学习,方便之后自己的使用,而不需要频繁的查阅资料。...

继续访问

python-plt.xticks与plt.yticks

栗子: plt.figure(figsize=(10, 10)) for i in range(25): plt.subplot(5, 5, i+1) plt.xticks([]) plt.yticks([]) plt.grid(False) plt.imshow(train_images[i], cmap=plt.cm.binary) plt.xlabel(class_names[train_labels[i]]) plt.show() 设置x或y轴对应显

继续访问

plt绘图总结

matplotlib绘图

继续访问

Python的数据科学函数包(三)——matplotlib(plt)

继续访问

热门推荐 python plt 画图

使用csv数据文件在百度网盘 import pandas as pd unrate = pd.read_csv('unrate.csv') # pd.to_datetime() 转换成日期格式,即由 1948/1/1 转换为 1948-01-01 unrate['DATE'] = pd.to_datetime(unrate['DATE']) print(unrate.head(12)) ...

继续访问

python数据可视化实现步骤,Python数据可视化图实现过程详解

Python数据可视化图实现过程详解更多python视频教程请到菜鸟教程画分布图代码示例:# encoding=utf-8import matplotlib.pyplot as pltfrom pylab import * # 支持中文mpl.rcParams[‘font.sans-serif’] = [‘SimHei’]‘mention...

继续访问

matplotlib-plt.plot用法

文章目录 英语好的直接参考这个网站 matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs) 将x,y绘制为线条或标记 参数: x, y:数据点的水平/垂直坐标。x值是可选的,默认为range(len(y))。通常,这些参数是 一维数组。它们也可以是标量,也可以是二维的(在这种情况下,列代表单独的数据集)。 这些参数不能作为关键字传递。 fmt:格式字符串,格式字符串只是用于快速设置基本行属性的缩

继续访问

python Plt学习

plt的简单学习

继续访问

plt.show()和plt.imshow()的区别

问题:plt.imshow()无法显示图像 解决方法:添加:plt.show(),即 plt.imshow(image) #image表示待处理的图像 plt.show() 原理:plt.imshow()函数负责对图像进行处理,并显示其格式,而plt.show()则是将plt.imshow()处理后的函数显示出来。 ...

继续访问

python题库刷题网站_python在线刷题网站

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台;社区覆盖了云计算、大数据、人工智能、IoT、云原生、数据库、微服务、安全、开发与运维9大技术领域。","link1":...

继续访问

python xticks_Python Matplotlib.pyplot.yticks()用法及代码示例

Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口,该模块提供了MATLAB-like接口。Matplotlib.pyplot.yticks()函数matplotlib库的pyplot模块中的annotate()函数用于获取和设置y轴的当前刻度位置和标签。用法: matplotlib.pyplot.yticks...

继续访问

python的plt函数_plt.plot画图函数

[‘font.sans-serif’]=[‘SimHei’]plt.rcParams[‘axes.unicode_minus’] = False#设置横纵坐标的名称以及对应字体格式font1 = {‘weight’ : ‘normal’,‘size’ : 15,...

继续访问

plt函数

写评论

7

794

122

Python中定义函数默认参数值的使用注意事项?

4.7.1. 默认参数值

最常用的一种形式是为一个或多个参数指定默认值。这会创建一个可以使用比定义是允许的参数更少的参数调用的函数,例如:

def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):

while True:

ok = input(prompt)

if ok in ('y', 'ye', 'yes'):

return True

if ok in ('n', 'no', 'nop', 'nope'):

return False

retries = retries - 1

if retries 0:

raise OSError('uncooperative user')

print(complaint)

这个函数可以通过几种不同的方式调用:

只给出必要的参数:

ask_ok('Do you really want to quit?')

给出一个可选的参数:

ask_ok('OK to overwrite the file?', 2)

或者给出所有的参数:

ask_ok('OK to overwrite the file?', 2, 'Come on, only yes or no!')

这个例子还介绍了 in 关键字。它测定序列中是否包含某个确定的值。

默认值在函数 定义 作用域被解析,如下所示:

i = 5

def f(arg=i):

print(arg)

i = 6

f()

将会输出 5。

重要警告: 默认值只被赋值一次。这使得当默认值是可变对象时会有所不同,比如列表、字典或者大多数类的实例。例如,下面的函数在后续调用过程中会累积(前面)传给它的参数:

def f(a, L=[]):

L.append(a)

return L

print(f(1))

print(f(2))

print(f(3))

这将输出:

[1]

[1, 2]

[1, 2, 3]

如果你不想让默认值在后续调用中累积,你可以像下面一样定义函数:

def f(a, L=None):

if L is None:

L = []

L.append(a)

return L

求云模型评价云图的python代码,做出的图就像下面图一样的

你把单做一个的代码贴出来,我可以帮你合到一个图上。

先看结果:

然后贴代码:

导包和def函数还用原来的;

从可视化开始换成下面:

Ex=[0,0.125,0.25,0.375,0.5,0.625,0.75,0.875,1]

fig = plt.figure()

for i in Ex:

res=forwardCloud(i,0.04,0.005,1000)

x=[x[0] for x in res]

y=[x[1] for x in res]

plt.scatter(x,y,color='red',s=3)

plt.show()

希望可以帮到你

Python能做什么,能够开发什么项目?

Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

Python是一种解释型脚本语言,可以应用于Web 和 Internet开发、科学计算和统计、人工智能、教育、桌面界面开发、软件开发、后端开发这些领域。

Python的应用

1、系统编程

提供API(Application Programming Interface应用程序编程接口),能方便进行系统维护和管理,Linux下标志性语言之一,是很多系统管理员理想的编程工具。

2、图形处理

有PIL、Tkinter等图形库支持,能方便进行图形处理。

3、数学处理

NumPy扩展提供大量与许多标准数学库的接口。

4、文本处理

python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。

5、数据库编程

程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。

6、网络编程

提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如Zope,Mnet 及BitTorrent. Google都在广泛地使用它。

7、Web编程

应用的开发语言,支持最新的XML技术。

8、多媒体应用

Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。

9、pymo引擎

PYMO全称为python memories off,是一款运行于Symbian S60V3,Symbian3,S60V5, Symbian3, Android系统上的AVG游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memories off)风格的AVG游戏,故命名为PYMO。

10、黑客编程

python有一个hack的库,内置了你熟悉的或不熟悉的函数,但是缺少成就感。

参考资料来源:百度百科—Python

腾讯云函数不支持C#

C#语言由于需要编译后才可以在 CoreCLR 虚拟机中运行。因此在 SCF 中的使用方式,和 Python、Node.js 这类脚本型语言不同,和Java一样有如下限制:

不支持上传代码:使用 C# 语言,仅支持上传已经开发完成,编译打包后的 zip 包。SCF 环境不提供 C# 的编译能力。

不支持在线编辑:不能上传代码,所以不支持在线编辑代码。CoreCLR 运行时的函数,在代码页面仅能看到再次通过页面上传或 COS 提交代码的方法。

自定义.NET Custom runtime

Custom Runtime的封装工作就是要把各种trigger 的事件封装一个.NET Standard库,开发云函数。自 .NET Core 2.0 开始, 提供了名为 IHostedService 的新接口,有助于轻松实现托管服务,文章《ASP.NET Core 3.x控制IHostedService启动顺序浅探》有深入的实现分析,基于IHostedService 实现一个SCFHostService:

这里我们把SCF的Custom Runtime 抽象到ISCFHost 中

在SCFHost 类中完成Custom Runtime的业务处理,接收来自SCF 的事件,转发给函数进行处理,函数处理的接口 IFunctionInvoker:

默认实现了FunctionInvoker 把请求信息 返回给 SCF:

responseBody 代表了SCF函数的不同Trigger事件信息,我们可以根据不同的Trigger 定义不同的处理函数,例如我们处理HttpTrigger的函数为HttpFunctionInvoker:

上面我们已经完成了最小的MVP封装,利用.NET Core的依赖注入容器封装起来,我们定义了一个ISCFBuilder 来组装函数的配置和服务:

SCF 云函数开发

我们使用.NET Core的控制台程序来开发云函数,创建一个控制台程序, 引用Yhd.TencentCloud.SCF 包,把Program.cs 替换成类似代码:

using Microsoft.Extensions.Configuration;

using Microsoft.Extensions.DependencyInjection;

using Microsoft.Extensions.Hosting;

using Microsoft.Extensions.Logging;

using System.Threading.Tasks;

using Yhd.FindJob;

using Yhd.TencentCloud.SCF.Executors;

public class Index

{

static async Task Main(string[] args)

{

var builder = new HostBuilder()

.ConfigureSCF((context, scfbuilder) =

{

var configuration = scfbuilder.Configuration;

scfbuilder.Services.AddFindJob(configuration);

scfbuilder.Services.AddEasyCaching(options =

{

options.UseInMemory();

//use redis cache that named redis

options.UseRedis(configuration)

.WithJson()

;

});

scfbuilder.Services.AddTransientIFunctionInvoker, JobsHttpFunctionInvoker();

})

.UseConsoleLifetime();

var host = builder.Build();

using (host)

{

await host.RunAsync();

}

}

}

通过ConfigureSCF 可以添加函数的依赖服务,例如上面例子中的EasyCaching 以及函数的服务, 关键的一句是  scfbuilder.Services.AddTransientIFunctionInvoker, JobsHttpFunctionInvoker();  把函数的处理逻辑使用JobsHttpFunctionInvoker 进行注入。把函数的配置放到appsettings.json。

现在SCF 云函数有个问题是本地Windows开发问题,本地的函数逻辑的测试可以通过单元测试进行。还有函数打包必须在Linux环境下进行。

云函数部署

创建 bootstrap 文件

bootstrap 是运行时入口引导程序文件,Custom Runtime 加载函数时固定检索 bootstrap 同名文件,并执行该程序来启动 Custom Runtime 运行时。Custom Runtime 支持任意语言及版本开发运行函数,主要基于 bootstrap 引导程序由开发者自定义实现。其中,bootstrap 需具备以下条件:

需具有可执行权限。

能够在 SCF 系统环境(CentOS 7.6)中运行。

下面这个是 .NET Core 3.1的云函数 bootstrap 文件

#!/bin/sh

echo "Start dotnet bootstrap ~~~"

export DOTNET_ROOT=/opt/rt

export PATH=$(pwd):/opt/rt:${PATH}

dotnet ./index/bin/Release/netcoreapp3.1/index.dll

index.dll 就是我们开发的函数文件。

成功创建 bootstrap 和 函数文件 后,目录结构如下所示:

├ bootstrap

└ index

需要在Linux 下执行以下命令,设置文件可执行权限,并将其添加至 ZIP 包

部署包准备好后,可以通过 云函数控制台 来创建和发布函数

在腾讯云云函数计算上部署.NET Core 3.1的更多相关文章

阿里云函数计算上部署.NET Core 3.1

使用阿里云ECS或者其他常见的VPS服务部署应用的时候,需要手动配置环境,并且监测ECS的行为,做补丁之类的,搞得有点复杂.好在很多云厂商(阿里云.Azure等)提供了Serverless服务,借助于 ...

IIS上部署Net.Core

部署: 1.安装vc_redist.x64vc_redist.x64 2.安装DotNetCore.1.0.0.RC2-WindowsHosting 3.安装DotNetCore.1.0.0-SDK. ...

So Easy - 在Linux服务器上部署 .NET Core App

.NET Core 是微软提供的免费.跨平台和开源的开发框架,可以构建桌面应用程序.移动端应用程序.网络应用程序.物联网应用程序和游戏应用程序等.如果你是 Windows 平台下的 dotnet 开发 ...

在IIS上部署 .Net Core 3.0 项目踩坑实录

在IIS上部署 .Net Core 3.0 项目的主要流程有: 安装并启用IIS 安装AspNetCoreModuleV2 添加.配置网站 设置应用程序池 通过VS发布 一.安装并启用IIS: 安装了 ...

在CentOS 8 上 部署 .Net Core 应用程序

在Centos 8 上 部署 .Net Core 应用程序     -- 记录篇 1.更新dnf 源 1 dnf update 2.安装 Asp.Net Core 运行时 1 dnf install ...

在腾讯云amp;阿里云上部署JavaWeb项目(Tomcat+MySQL)

之前做项目都是在本地跑,最近遇到需要在在云服务器(阿里云或者腾讯云都可以,差不多)上部署Java Web项目的问题,一路上遇到了好多坑,在成功部署上去之后写一下部署的步骤与过程,一是帮助自己总结记忆, ...

ASP.NET Core学习之四 在CentOS上部署.net core

一.安装CentOs 以前在大学学过linux,但是对命令行总是有一种深深的排斥感,几年之后,还是又回来了. 1.下载 现在没法FQ,就算是FQ网速也是蜗牛一样慢,我使用阿里云的镜像站进行下载速度还是 ...

【netcore入门】在Windows IIS上部署.NET Core 2.1项目

部署之前先检查下面2个先决条件是否满足 1.安装了 IIS 模块 win7 在 控制面板→程序和功能→打开或关闭Windows功能→勾选Internet 信息服务(Internet Informati ...

CentOS7系统上部署.net core程序

一.准备工作 首先安装 xshell 和 xftp ,前者用于SSH连接Linux服务器,后者用于FTP上传下载文件. xshell和xftp个人使用是免费的,下载地址 之后分别输入用户名和密码登录主 ...


文章标题:云函数Python实例的简单介绍
本文地址:http://6mz.cn/article/hpjisj.html

其他资讯