利用python输出两个字符串中对应位置相同的字母
时间: 2023-05-26 19:05:04 浏览: 64
可以使用zip函数和列表推导式实现:
```
str1 = "hello"
str2 = "heplo"
result = [i for (i, j) in zip(str1, str2) if i == j]
print(result) # ['h', 'e', 'l', 'o']
```
首先,zip函数将两个字符串同时迭代,将相应位置的字母组成一个元组。然后,列表推导式遍历这些元组,如果元组中的两个字母相同,就将这个字母添加到结果列表中。
相关问题
python函数功能为打印出两个字符串中对应位置相同的字母
以下是实现该功能的Python函数代码:
```python
def print_common_chars(str1, str2):
if len(str1) != len(str2):
print("两个字符串长度不一致,无法比较")
return
for i in range(len(str1)):
if str1[i] == str2[i]:
print(str1[i], end=" ")
```
该函数接受两个字符串作为参数,首先判断这两个字符串的长度是否一致,如果长度不一致则打印一条错误信息并返回。如果长度一致,则对应位置逐个比较这两个字符串中的字符,如果字符相同则打印出来。
例如,假设要比较的两个字符串分别为"hello"和"heelo",则调用该函数的结果为:
```
h e l o
```
利用python实现一个函数,函数功能为打印出两个字符串中对应位置相同的字母
以下是Python代码实现:
```python
def print_matching_letters(str1, str2):
"""
打印出两个字符串中对应位置相同的字母
"""
# 对两个字符串进行逐字符比较,只保留相同位置上相同的字符
matching_letters = ''
for i in range(min(len(str1), len(str2))):
if str1[i] == str2[i]:
matching_letters += str1[i]
# 输出结果
print(matching_letters)
```
示例:
```python
>>> print_matching_letters('abcde', 'abxze')
'abe'
```