本期最终章 Python 面试问题 解答(下)

 

31)解释如何从C访问用Python编写的模块?

您可以通过以下方法访问C中用Python编写的模块,

Module = = PyImport_ImportModule(“<modulename>”);

32)提到在Python中使用//运算符?

它是一个Floor Divisionoperator,用于分割两个操作数,结果为商,只显示小数点前的数字。例如,10 // 5 = 2和10.0 // 5.0 = 2.0。

33)提到使用Python的五大好处?  Python学习资料分享,大牛解答技术瓶颈           企鹅裙

  • Python包含一个巨大的标准库,适用于大多数Internet平台,如电子邮件,HTML等。
  • Python不需要显式内存管理,因为解释器本身会将内存分配给新变量并自动释放它们
  • 由于使用方括号,因此易于阅读
  • 易于学习的初学者
  • 拥有内置数据类型可以节省编程时间和工作量,从而声明变量

34)提到 在Python中使用split函数

在Python中使用split函数是使用定义的分隔符将字符串分解为更短的字符串。它给出了字符串中存在的所有单词的列表。

35)解释什么是Flask及其好处

Flask是基于“Werkzeug,Jinja 2和良好意图”BSD许可的Python的Web微框架。Werkzeug和jingja是它的两个依赖。

Flask是微框架的一部分。这意味着它对外部库几乎没有依赖性。它使框架变得轻盈,同时几乎没有更新的依赖性和更少的安全性错误。

36)提到Django,Pyramid和Flask之间有什么区别?

Flask是一个“微框架”,主要用于具有更简单要求的小型应用程序。在烧瓶中,您必须使用外部库。Flask已准备好使用。

金字塔是为更大的应用程序构建的。它提供了灵活性,并允许开发人员为他们的项目使用正确的工具。开发人员可以选择数据库,URL结构,模板样式等。金字塔很重要。

像Pyramid一样,Django也可以用于更大的应用程序。它包括一个ORM。

 

37)提到什么是Flask-WTF以及它们的特点是什么?

Flask-WTF提供与WTForms的简单集成。功能包括Flask WTF

  • 与wtforms集成
  • 使用csrf令牌保护表单
  • 全球csrf保护
  • 国际化整合
  • Recaptcha支持
  • 文件上传适用于Flask Uploads

38)解释Flask脚本工作的常用方法是什么?

烧瓶脚本工作的常用方法是

  • 它应该是您的应用程序的导入路径
  • 或Python文件的路径

 

39)解释如何在Flask中访问会话?

会话基本上允许您记住从一个请求到另一个请求的信息。在烧瓶中,它使用签名cookie,以便用户可以查看会话内容并进行修改。如果只有密钥Flask.secret_key,则用户可以修改会话。

40)Flask是一个MVC模型,如果是,给出一个示例显示您的应用程序的MVC模式?

基本上,Flask是一个简约框架,其行为与MVC框架相同。所以MVC非常适合Flask,MVC的模式我们将考虑以下示例

from flask import Flask

app = Flask(_name_)

@app.route("/")

Def hello():

return "Hello World"

app.run(debug = True)

In this code your,

  • Configuration part will be

from flask import Flask

app = Flask(_name_)

  • View part will be

@app.route("/")

Def hello():

return "Hello World"

  • While you model or main part will be

app.run(debug = True)

41)解释Python Flask中的数据库连接?

Flask支持数据库驱动的应用程序(RDBS)。这样的系统需要创建一个模式,这需要将shema.sql文件传递给sqlite3命令。因此,您需要安装sqlite3命令才能在Flask中创建或启动数据库。

Flask允许以三种方式请求数据库

  • before_request():在请求之前调用它们并且不传递任何参数
  • after_request():在请求后调用它们并传递将发送到客户端的响应
  • teardown_request():在引发异常时调用它们,并且不保证响应。在构建响应之后调用它们。不允许它们修改请求,并忽略它们的值。

42)你有多个运行Python的Memcache服务器,其中一个memcacher服务器出现故障,它有你的数据,是否会尝试从那个故障服务器获取关键数据?

故障服务器中的数据不会被删除,但有一个自动故障的规定,您可以为多个节点配置。可以在任何类型的套接字或Memcached服务器级别错误期间触发故障转移,而不是在正常的客户端错误(如添加现有密钥等)期间触发。

43)解释如何最小化Python开发中的Memcached服务器中断?

  • 当一个实例发生故障时,其中一些实例出现故障,当客户端发出请求时重新加载丢失的数据时,这会给数据库服务器带来更大的负载。为避免这种情况,如果您的代码已编写为最小化缓存标记,那么它将产生最小的影响
  • 另一种方法是使用丢失的机器IP地址在新机器上调出Memcached实例
  • 代码是最小化服务器中断的另一个选项,因为它使您可以自由地以最少的工作更改Memcached服务器列表
  • 设置超时值是某些Memcached客户端为Memcached服务器中断实现的另一个选项。当Memcached服务器出现故障时,客户端将继续尝试发送请求,直到达到超时限制

44)解释什么是Dogpile效应?你怎么能防止这种影响?

当缓存过期时,Dogpile效应被称为事件,并且网站被客户端同时发出的多个请求所击中。使用信号量锁可以防止这种影响。在此系统中,当值到期时,第一个进程获取锁并开始生成新值。

45)解释如何在Python项目中不使用Memcached?

  • Memcached常见的误用是将其用作数据存储,而不是缓存
  • 切勿使用Memcached作为运行应用程序所需信息的唯一来源。数据也应始终通过其他来源提供
  • Memcached只是一个键或值存储,不能对数据执行查询或迭代内容以提取信息
  • Memcached在加密或身份验证方面不提供任何形式的安全性

转载于:https://my.oschina.net/u/3942476/blog/1930740

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值