深入解答11道Python基础面试题

1. Python的参数传递是值传递还是引

举例说明Python函数参数传递的几种形式,并说明函数传参是值传递还是引用传递

一、位置参数

调用函数时根据函数定义的参数位置来传递参数。例子:

def print_hello(name, sex):    sex_dict = {1: u‘先生‘, 2: u‘女士‘}    print (‘hello %s %s, welcome to python world!‘ %(name, sex_dict.get(sex, u‘先生‘)))

# 两个参数的顺序必须一一对应,且少一个参数都不可以print_hello(‘tanggu‘, 2)#输出:hello tanggu 女士, welcome to python world!
print_hello(‘tanggu‘, 3)#输出:hello tanggu 先生, welcome to python world!(字典中没有3的值,所以返回“先生”)

# 字典中get()用法:dict.get(key, default=None)   #key -- 字典中要查找的键。default -- 如果指定键的值不存在时,返回该默认值值。
时间: 2024-10-08 20:40:02

深入解答11道Python基础面试题的相关文章

11道Python经典面试题|深入解答

1.单引号,双引号,三引号的区别 分别阐述3种引号用的场景和区别 1),单引号和双引号主要用来表示字符串 比如: 单引号:'python' 双引号:"python" 2).三引号 三单引号:'''python ''',也可以表示字符串一般用来输入多行文本,或者用于大段的注释 三双引号:"""python""",一般用在类里面,用来注释类,这样省的写文档,直接用类的对象__doc__访问获得文档 区别: 若你的字符串里面本身包含

28道java基础面试题-上

[软帝学院]28道java基础面试题1.面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么.继承:继承是从已有类得到继承信息创建新类的过程.提供继承信息的类被称为父类(超类.基类):得到继承信息的类被称为子类(派生类).继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读阎宏博士的<Java与

python基础面试题整理---从零开始 每天十题(01)

最近在弄flask的东西,好久没写博客的,感觉少了点什么,感觉被别人落下好多,可能渐渐的养成了写博客的习惯吧.也是自己想学的东西太多了(说白了就是基础太差了,只是know how,不能做到konw why). 不说那些毒鸡汤了,我们来说说我们今天的python基础面试题吧. 一,Q:python的优缺点有什么? A:优点: 1,基础语法简单易学,对于初学者来说,语法还是相对简单的,比较容易学习,网上的学习资料也很多.    2,面向对象,在python里继承和封装较多,而python的多态还是相

28道java基础面试题-下

28道java基础面试题-下15.Java语言如何进行异常处理,关键字:throws.throw.try.catch.finally分别如何使用?答:Java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口.在Java中,每个异常都是一个对象,它是Throwable类或其子类的实例.当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并可以对其进行处理.Java的异常处理是通过5个关键词来实现的:try.catch.th

python基础面试题整理---从零开始 每天十题(02)

书接上回,我们继续来说说python的面试题,我在各个网站搜集了一些,我给予你们一个推荐的答案,你们可以组织成自己的语言来说出来,让我们更好的做到面向工资编程 一.Q:说说你对zen of python的理解,你有什么办法看到它. A:The Zen of Python是Python语言的指导原则,遵循这些基本原则,输入import this,然后直接运行即可 二.Q:什么是元类(meta_class) A:我们定义类来创建对象,但是现在我们知道类也是对象.那么是通过什么来创建类呢?答案就是元类

.Net程序员Python之道---Python基础

最近对动态语言比较好奇.所以选择了学习Python这门语言.话不多说开始学习笔记. 一. Python 基础: 1. print对Python进行数据输出, #号后面是队友的输出结果, 通过encoded对字符进行转码,ord获取字符的ASCII, %s,%d与C语言的输出类似,分别表示字符串和整数. print('Hello World') print 100+200 #300 print 1>2 #false print 1>'2' #false #print 'abc'+2 # 报错 p

python基础面试题1

Python面试重点(基础篇) 注意:只有必答题部分计算分值,补充题不计算分值. 第一部分 必答题(每题2分) 简述列举了解的编程语言及语言间的区别? c语言是编译型语言,运行速度快,但翻译时间长python是解释性语言,开发效率高,但运行速度慢java必须声明变量,python并不需要声明变量 编译型语言:一次性全部编译成二进制码,再去运行解释型语言:编译一行,运行一行python 解释型 简洁高效 容易上手java   混合型 (JVM,JIT编译器) 学习成本高,开发周期慢,web方向c

11道高频Java面试题解析(Spring+Spring MVC+MyBatis)

前言 最近一直都在面试,整理了几家公司常问的三大框架面试题,现在把它带答案整理好在这里分享给大家,希望对大家有所帮助. 以下为 Spring 常见面试问题 1 .什么是 Spring 框架?Spring 框架有哪些主要模块? Spring 框架是一个为 Java 应用程序的开发提供了综合.广泛的基础性支持的 Java 平台. Spring 帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发. Spring 框架本身亦是按照设计模式精心打造,这使得我们可以在开发环境中安心的集

8道Python基础面试练习题

1.26个字母大小写成对打印,例如:Aa,Bb...... for i in range(26): print(chr(65+i)+chr(97+i)) 2.一个list包含10个数字,然后生成一个新的list,要求新的list里面的数都比之前的数多1 ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' list=[2,3,6,4,7,5,1,8,9,0] list1=[]