萬變不離核心基礎第三關——字符串與字符串之間鏈接的五種方式/字符串與非字符串之間鏈接的三種方式

面試題第三關:python

第一部分——考點:

  1. 字符串與字符串之間如何鏈接。
  2. 字符串與非字符串之間如何鏈接。

第二部分——面試題:

1.面試題一:字符串與字符串之間鏈接有幾種方式。

2.面試題二:字符串如何與非字符串之間鏈接。

3.面試題三:字符串與對象鏈接時如何讓對象輸出特定的內容,如:MyClass。


第三部分——解析:

面試題一 之 字符串與字符串之間鏈接的方式(共計五種):

  1. (加號)+
s1 = 'hello'
s2 = 'world'
s = s1 + s2
print(s)
複製代碼

在這裏插入圖片描述

  1. 直接鏈接
S = "hello""world"
print(S)
複製代碼

在這裏插入圖片描述

  1. 用逗號(,)鏈接
print('hello','world')    # 可是這樣只能直接打印,若是咱們想將其放入變量裏的話
複製代碼

在這裏插入圖片描述

拓展:標準輸出的重定向——即把print輸出到控制檯重定位爲給一個變量。面試

from io import StringIO
import sys
old_stdout = sys.stdout
result = StringIO()
sys.stdout = result
print('hello','world')
sys.stdout = old_stdout     # 恢復標準輸出
result_str = result.getvalue()
print("逗號鏈接:",result_str)
複製代碼

在這裏插入圖片描述

  1. 格式化
s1 = 'hello'
s2 = 'world'
s = '<%s> <%s>' %(s1,s2)
print("格式化:",s)
複製代碼

在這裏插入圖片描述

  1. join
s1 = 'hello'
s2 = 'world'
s = " ".join([s1,s2])
print("join鏈接:",s)
複製代碼

在這裏插入圖片描述

面試題二 之 字符串與非字符串之間如何鏈接:

  1. (加號)+
s1 = 'hello'
s2 = 'world'
n = 20
v = 12.44
s = s1 + str(n) + str(v)
print(s)
複製代碼

在這裏插入圖片描述

  1. 格式化
s1 = 'hello'
s2 = 'world'
n = 20
v = 12.44
s = '<%s> <%d> <%.2f>' %(s1,n,v)
print("格式化:",s)
複製代碼

在這裏插入圖片描述

  1. 重定向
from io import StringIO
import sys

s1 = 'hello'
s2 = 'world'
n = 20
v = 12.44

old_stdout = sys.stdout
result = StringIO()
sys.stdout = result
print(s1,True,n,v,sep='*')   # sep 是規定鏈接使用的符號
sys.stdout = old_stdout     # 恢復標準輸出
result_str = result.getvalue()
print("逗號鏈接:",result_str)
複製代碼

在這裏插入圖片描述

面試題三 之 字符串與對象鏈接時如何讓對象輸出特定的內容,如:MyClass:

s1 = 'hello'
s2 = 'world'

class MyClass:
    def __str__(self):
        return 'Myclass'
my = MyClass()
s = s1 + str(my)
print(s)
複製代碼

在這裏插入圖片描述

相關文章
相關標籤/搜索