python list去掉引号_最新的python面试题集170之三(基础性学习)
![](/assets/blank.gif)
10.了解Python3的类型注解么?
答:在 Python 3.5 中,Python PEP 484 引入了类型注解(type hints)。
类型注解(type hints)的好处是:
1).让别的程序员看得更明白。
2).让 IDE 了解类型,从而提供更准确的代码提示、补全和语法检查(包括类型检查,可以看到 str 和 float 类型的参数被高
亮提示)
3).这种类型注解实际上只是一种类型提示,对运行实际上是没有影响的,
比如调用 add 方法的时候,我们传入的不是 int 类型,而是一个 float 类型,它也不会报错,也不会对参数进行类型转换。
4).如:
def add(x:int, y:int) -> int: return x + yprint(add.__annotations__)
#在add.__annotations__,在函数的 __annotations__ 属性中会有你设定的注解。
图1
![](/assets/blank.gif)
11.例举你知道 Python 对象的命名规范,例如方法或者类等。
答:
(1)类:总是使用首字母大写单词串,如 MyClass。内部类可以使用额外的前导下划线。
(2)变量:小写,由下划线连接各个单词。方法名类似.
(3)常量:常量名所有字母大写等。
12.Python 中的注释有几种?
答:总体来说分为两种,单行注释和多行注释。
(1)单行注释在行首是 #。
(2)多行注释可以使用三个单引号或三个双引号,包括要注释的内容。
图2
![](/assets/blank.gif)
13.如何优雅的给一个函数加注释?
答:可以使用 docstring 配合类型注解。
函数注释通常在 def 语句下方,第一行表示函数用法,接下来对函数接受的参数进行解释,
最后对函数的返回值进行注释,方便他人理解函数的用法。
14.如何给变量加注释?
答:可以通过变量名:类型的方式如下
a: str = "this is string type"
15.Python 代码缩进中是否支持 Tab 键和空格混用。
答:不允许tab键和空格键混用,这种现象在使用 sublime 的时候尤为明显。一般推荐使用 4 个空格替代 tab 键。
16.是否可以在一句 import 中导入多个库?
答:可以是可以,但是不推荐。因为一次导入多个模块可读性不是很好,所以一行导入一个模块会比较好。
同样的尽量少用 from modulename import *,因为判断某个函数或者属性的来源有些困难,不方便调试,可读性也降低了。
17.在给 Py 文件命名的时候需要注意什么?
答:给文件命名的时候不要和标准库库的一些模块重复,比如 abc。 另外要名字要有意义,不建议数字开头或者中文命名。
使用全小写或者下划线进行命名。
18.例举几个规范 Python 代码风格的工具
答:pylint 和 flake8、YAPF,谷歌开发的代码规范工具。
Black,依赖Python3.6+的第三方库,可以直接将原代码变为符合PEP8标准的代码。
数据类型
字符串
19.列举 Python3 中的基本数据类型?
答:六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
我们所说的"类型"是变量所指的内存中对象的类型。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:
counter = 100 # 整型变量miles = 1000.0 # 浮点型变量name = "runoob" # 字符串print (counter)print (miles)print (name)
20.如何区别可变数据类型和不可变数据类型
答:以下所有的内容都是基于内存地址来说的。
不可变数据类型:当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会发生改变,
对于这种数据类型,就称不可变数据类型。
可变数据类型:当该数据类型的对应变量的值发生了改变,那么它对应的内存地址不发生改变,
对于这种数据类型,就称可变数据类型。
总结:不可变数据类型更改后地址发生改变,可变数据类型更改地址不发生改变。
-----------------------------
在python中数据类型有:整型,字符串,元组,集合,列表,字典。
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
----------------------------
21.将"hello world"转换为首字母大写"Hello World"
打开终端,进入python3.8
输入:
arr = "hello world".split(" ")new_str = f"{arr[0].capitalize()} {arr[1].capitalize()}"print(new_str)
即
Hello World
22.如何检测字符串中只含有数字?
答:Python的语法,字符串类型自带函数isdigit(),当字符串中只存在数字返回True,反之返回False。
可以综合使用any和isdigit方法:
def hasNumbers(inputString):
... return any(char.isdigit() for char in inputString) #return与has对齐,但在def之后
... #要回车下去
>>> hasNumbers("I own 1 dog")
True
>>> hasNumbers("I own no dog")
False
可以使用正则表达式:
>>> import re
>>> def hasNumbers(inputString):
... return bool(re.search(r'd', inputString)) #return与has对齐,但在def之后
... #要回车下去
>>> hasNumbers("I own 1 dog")
True
>>> hasNumbers("I own no dog")
False
图3
![](/assets/blank.gif)
23.将字符串"ilovechina"进行反转
答:
s1 = "ilovechina"[::-1]
print(s1)
结果:
anihcevoli
24.Python 中的字符串格式化方式你知道哪些?
答:format()是最先进的。
三种字符串格式化方法
1).最方便的
print ('hello %s and %s' % ('df', 'another df'))
结果:
hello df and another df
2).最好用的
print('hello %(first)s and %(second)s' % {'first':'df', 'second':'another df'})
结果:
hello df and another df
3).最先进的
print ('hello {first} and {second}'.format(first='df', second='another df'))
结果:
hello df and another df
图4
![](/assets/blank.gif)
25.有一个字符串开头和末尾都有空格,比如“ adabdw ”,要求写一个函数把这个字符串的前后空格都去掉。
答:
方法一:
def strip(string): start, end = 0, -1 length = len(string) for i in range(length): if string[i] != ' ': start = i break for j in range(-1, -length, -1): if string[j] != ' ': end = length + j + 1 break return string[start:end]s = ' adabdw 'print(s)
方法二:
def strip_function(s1): return s1.strip()s1 = " adabdw "print(strip_function(s1))
26.获取字符串”123456“最后的两个字符。
答:“123456”[4:6:]或“123456"[-2::]
即:
a = "123456"
print(a[4:6:])
或者
print(a[-2::])
27.一个编码为 GBK 的字符串 S,要将其转成 UTF-8 编码的字符串,应如何操作?
答:
a= "S".encode("gbk").decode("utf-8",'ignore')print(a)
28.
(1)s="info:xiaoZhang 33 shandong",用正则切分字符串输出['info', 'xiaoZhang', '33', 'shandong']
我们需要根据冒号或者空格切分
import res = "info:xiaoZhang 33 shandong"res = re.split(r":| ", s)print(res)
(2) a = "你好 中国 ",去除多余空格只留一个空格。
答:
s = "你好 中国 "print(" ".join(s.split()))
29. (1)怎样将字符串转换为小写
答:
(1) 使用字符串的 lower() 方法。
(2)单独使用单引号和双引号没什么区别,但是如果引号里面还需要使用引号的时候,
就需要这两个配合使用了,然后说三引号,同样的三引号也分为三单引号和三双引号,
两个都可以声名长的字符串时候使用,如果使用 docstring 就需要使用三双引号。
python list去掉引号_最新的python面试题集170之三(基础性学习)相关推荐
- python字符串去掉空行_从python中的字符串中删除空格
python字符串去掉空行 如何在python中删除字符串中的空格 (How to remove whitespaces in a string in python) str.lstrip()str. ...
- python的知识体系_最新Python知识体系梳理
课程目录 Day01 Python教程:01.前提概要.wmv Python教程:02.Python基础复习.wmv Python教程:03.Python基础复习.wmv Python教程:04.Py ...
- python编辑器编程猫_编程猫Python编辑器最新下载_编程猫Python编辑器官方正式版v1.2.0_点点游...
随着科技的发展,现在程序员是一个市场需求很大的职位,而且很多小朋友也对编程产生了兴趣,如今Python是一个发展前景很好的编程语言,今天小编推荐一款可以适合小朋友的编辑软件,可以让小朋友们制作一些有趣 ...
- python积木编程软件_最新海龟编辑器(Python编辑器)v0.6.1 官方版下载地址电脑版-锐品软件...
海龟编辑器是编程猫推出的一款Python编辑器,专门针对少儿Python学习,让孩子通过简单的方式,爱上Python,学会Python,软件界面简洁,使用方便,想要快速学习Python的用户,不妨试试 ...
- python参数是什么_最全Python快速入门教程,满满都是干货
Python是面向对象,高级语言,解释,动态和多用途编程语言.Python易于学习,而且功能强大,功能多样的脚本语言使其对应用程序开发具有吸引力. Python的语法和动态类型具有其解释性质,使其成为 ...
- python变量定义大全_详解python变量与数据类型
这篇文章我们学习 Python 变量与数据类型 变量 变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念,变量可以通过变量名访问.在 Python 中 变量命名规定,必须是大小写英文,数字 ...
- python模块下载过程_常用的python模块及安装方法
bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUti ...
- python展开函数方法_逐步展开Python详细教学—Python语法
Python语法–在Python世界迈出第一步 我们已经拥有了许多的编程语言,而且都有自己的特色,但是一种语言的独特之处在于它的特性.最终,是它的特点让它被选中或通过项目.因此,在开始更深入的Pyth ...
- python数据科学手册_小白入门Python数据科学
前言 本文讲解了从零开始学习Python数据科学的全过程,涵盖各种工具和方法 你将会学习到如何使用python做基本的数据分析 你还可以了解机器学习算法的原理和使用 说明 先说一段题外话.我是一名数据 ...
最新文章
- 138.ssm 框架下 导出Excel
- 【Java基础】基本类型与运算
- 一种可以穿透还原卡和还原软件的代码
- Android:如何将Enum放入捆绑包中?
- Random类实例--猜数字游戏
- [!] Attempt to read non existent folder `***********`
- oracle表的历史数据转储过程,C#连接Oracle数据库通过存储过程操作数据库 - cuizm的专栏 - CSDN博客...
- 软件测试之-测试用例写作规范
- 【python基础】--常用数据结构
- Python tkinter库之Canvas正方形旋转
- 混沌数学之Lorenz(洛伦茨)吸引子
- 华为全球发布UMTS终端商用新品
- 谷歌发布最强AI机器人AlphaGo Zero,融360拟融资3亿美元即将赴美上市 | 大数据周周看
- 约束最优化求解-拉格朗日函数Hesse阵的SQP二次规划方法求解约束最优化问题-梯度法求解无约束最优化问题
- 关于用transmac黑苹果制作引导盘无法识别
- Subspace Adversarial Training
- PAKDD 2019 AutoML 挑战赛圆满落幕,中国队伍包揽前三...
- 数学的三大核心领域——几何学范畴
- G中国固定式氨气检测仪行业应用状况与发展趋势预测报告2022-2028年
- 使用ffmpeg将avi转mp4以及yuyv转为图片