目录
- 阅读源
- 列举 Python 中的基本数据类型
- 如何区别可变数据类型和不可变数据类型
- 将"hello world"转换为首字母大写"Hello World"
- 如何检测字符串中只含有数字?
- 将字符串"ilovechina"进行反转
- Python 中的字符串格式化方式你知道哪些?
- 有一个字符串开头和末尾都有空格,比如“ adabdw ”,要求写一个函数把这个字符串的前后空格都去掉
- 获取字符串”123456“最后的两个字符
- .一个编码为 GBK 的字符串 S,要将其转成 UTF-8 编码的字符串,应如何操作?
- s=“info:xiaoZhang 33 shandong”,用正则切分字符串输出[‘info’, ‘xiaoZhang’, ‘33’, ‘shandong’]
- 怎样将字符串转换为小写?
- 单引号、双引号、三引号的区别?
- a = "你好 中国 ",去除多余空格只留一个空格
- 已知 AList = [1,2,3,1,2],对 AList 列表元素去重,写出具体过程
- 如何实现 “1,2,3” 变成 [“1”,“2”,“3”]
- 给定两个 list,A 和 B,找出相同元素和不同元素
- [[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
- 合并列表[1,5,7,9]和[2,2,6,8]
- 如何打乱一个列表的元素?
- 字典操作中 del 和 pop 有什么区别
- 按照字典的内的年龄排序
- 请合并下面两个字典 a = {“A”:1,“B”:2},b = {“C”:3,“D”:4}
- python3合并字典有三种方式
- 如何使用生成式的方式生成一个字典,写一段功能代码。
- 如何把元组(“a”,“b”)和元组(1,2),变为字典{“a”:1,“b”:2}
- Python 常用的数据结构的类型及其特性?
- Python 里面如何实现 tuple 和 list 的转换?
- 我们知道对于列表可以使用切片操作进行部分元素的选择,那么如何对生成器类型的对象实现相同的功能呢?
- 请将[i for i in range(3)]改成生成器
- a="hello"和 b="你好"编码成 bytes 类型
- 下面的代码输出结果是什么?
阅读源
列举 Python 中的基本数据类型
Python3 中有六个标准的数据类型:
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
如何区别可变数据类型和不可变数据类型
hash()内置函数
将"hello world"转换为首字母大写"Hello World"
>>> c = "hello world"
>>> c.title()
'Hello World'
>>>
如何检测字符串中只含有数字?
https://blog.csdn.net/qq_38727847/article/details/102736098?tdsourcetag=s_pctim_aiomsg
答案:
# 分为两种情况
# 1.不包含正负号 +-
a = '32323'
a.isdigit()
# 2.含有正负号
import re
re.match(r'[+-]?\d+$',a)
我的见解:
没说是哪一种数字(半角or全角阿拉伯数字、罗马数字、中文大写or小写数字)
s = input()
if s.isalnum():
if not (s.islower() or s.isupper()):
print('字符串只含有数字')
else:
print('字符串中有叛徒')
将字符串"ilovechina"进行反转
s = 'ilovechina'
x = list(s)
x.reverse()
''.join(x)
我的答案:
s = 'ilovechina'
s = s[::-1]
Python 中的字符串格式化方式你知道哪些?
1. %格式化方法
2. 字符串方法.format()
3. 字符串方法.format_map()
4. f-string
5. 内置函数 format()
有一个字符串开头和末尾都有空格,比如“ adabdw ”,要求写一个函数把这个字符串的前后空格都去掉
s = " adabdw "
s.strip()
获取字符串”123456“最后的两个字符
s = '123456'
print(s[-2:])
.一个编码为 GBK 的字符串 S,要将其转成 UTF-8 编码的字符串,应如何操作?
s.encode('utf-8')
s=“info:xiaoZhang 33 shandong”,用正则切分字符串输出[‘info’, ‘xiaoZhang’, ‘33’, ‘shandong’]
import re
s="info:xiaoZhang 33 shandong"
re.split(r'[:\s]',s)
怎样将字符串转换为小写?
b = 'HHH'
b.lower()
单引号、双引号、三引号的区别?
s = 'hello'
s= "hello"
单引号与双引号没有区别,
三引号可以用来加注释,所加注释可以使用__doc__查看
a = "你好 中国 ",去除多余空格只留一个空格
a = "你好 中国 "
s = ' '.join(a.strip().split())
已知 AList = [1,2,3,1,2],对 AList 列表元素去重,写出具体过程
a_list = [1,2,3,1,2]
ss = set(a_list)
如何实现 “1,2,3” 变成 [“1”,“2”,“3”]
s = "1,2,3"
s.split(',')
给定两个 list,A 和 B,找出相同元素和不同元素
# 最直接的方法
list_a = [1,2,3,4,5,6]
list_b = [2,3,6]
same_l = []
not_same = []
for i in list_a:
if i not in list_b:
not_same.append(i)
for j in list_b:
if j not in list_a:
not_same.append(j)
for x in list_a:
if x in list_b:
same_l.append(x)
# 奇技淫巧
list_a = [1,2,3,4,5,6]
list_b = [2,3,6]
set1 = set(list_a)
set2 = set(list_b)
# 相同元素
print(set1&set2)
# 不同元素
print(set1^set2)
[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
mm = [[1,2],[3,4],[5,6]]
[j for a in mm for j in a]
合并列表[1,5,7,9]和[2,2,6,8]
a = [1,5,7,9]
b = [2,2,6,8]
# 方法1
a.extend(b)
# 方法2
a[0:0] = b
# 方法3
a += b
如何打乱一个列表的元素?
import random
a = [1,5,7,9]
random.shuffle(a)
字典操作中 del 和 pop 有什么区别
del 操作删除键值对,不返回值;
pop 操作删除键值对的同时,返回键所对应的值。
按照字典的内的年龄排序
d1 = [
{'name':'alice', 'age':38},
{'name':'bob', 'age':18},
{'name':'Carl', 'age':28},
]
sorted(d1,key=lambda x:x['age'])
请合并下面两个字典 a = {“A”:1,“B”:2},b = {“C”:3,“D”:4}
python3合并字典有三种方式
# 1.
a = {'a':1,'b':2}
b = {'c':3,'d':4}
c = {}
c.update(a)
c.update(b)
# 2.
c = dict(a,**b)
# 3.
c = {**a,**b} # 官方推荐这种方式
如何使用生成式的方式生成一个字典,写一段功能代码。
{x:x*x for x in range(6)}
如何把元组(“a”,“b”)和元组(1,2),变为字典{“a”:1,“b”:2}
a = ('a','b')
b = (1,2)
z=zip(a,b)
c = dict(z)
Python 常用的数据结构的类型及其特性?
List,tuple,dict,set是比较常用的数据结构,queue,heap,deque,ProrityQueue,multiprocessing.Queue等进阶的数据结构类型。特性就去查查吧,写在这里太长了。
Python 里面如何实现 tuple 和 list 的转换?
tuple(list) # tuple转list
list(tuple) # list 转tuple
我们知道对于列表可以使用切片操作进行部分元素的选择,那么如何对生成器类型的对象实现相同的功能呢?
使用自带的itertools库进行实现,具体实现方式 itertools.islice(生成器对象,起始位置,结束位置),即可实现切片功能。
请将[i for i in range(3)]改成生成器
(i for i in range(3))
a="hello"和 b="你好"编码成 bytes 类型
a.encode()
b.encode()
下面的代码输出结果是什么?
a = (1,2,3,[4,5,6,7],8)
a[2] = 2
报错,元组是不可变对象,不支持修改