如何打印单词的第一个字母?

时间:2019-01-14 09:45:27

标签: python

我检查了其他问题,但这些问题似乎对我没有帮助,所以我决定问。

我的代码从我的文件中创建了一个随机变量(必要) 我想打印出变量附带的字符串,但是我只希望它打印出字符串的第一个字母。

E.G。这是一首歌曲名称,例如“奶酪”,我只想要“ C ?????”待打印,但由于我是新编码员,所以我不确定如何解决此问题。

我试图单独在字符串中包含单词,因为以前它带有艺术家名称,但是我删除了它,所以它只是1个单词,因为它对于初学者来说更容易拆分。

import random

EFile=open("ExternalFile.txt","w+")

Info1=("Shotgun")
Info2=("God's Plan")
Info3=("This is me")
Info4=("Solo")
Info5=("Psyco")

EFile.write(Info1)
EFile.write(Info2)
EFile.write(Info3)
EFile.write(Info4)
EFile.write(Info5)
EFile.close

Array=[Info1, Info2, Info3, Info4, Info5]

RanVar=random.choice(Array)
print(RanVar)

这部分代码运行良好,并且可以随机选择一个变量,但是我需要对变量“ Info”进行攻击的字符串仅输出第一个字母,并在可能的情况下输出其余单词作为问号。

如果这对于初学者来说太复杂了,我希望它只是第一个字母。

3 个答案:

答案 0 :(得分:2)

您可以只使用RanVar[0]写第一个字母,然后通过写“?”来写其余字母。比使用代码RanVar的{​​{1}}的总长度少1个时间。然后,将它们与'?'*(len(RanVar)-1)

连接在一起
+

答案 1 :(得分:1)

使用for循环处理1#

content=["Shotgun","God's Plan","This is me","Solo","Psyco"]
chars=[]
for y in content:
    chars.append(y[0])
print(chars)

方法2#列表理解

content=["Shotgun","God's Plan","This is me","Solo","Psyco"]
chars=[y[0] for y in content ]
print(chars)

答案 2 :(得分:1)

Python将每个字符串视为一个数组。您可以打印字母及其索引。下面的代码甚至可以更简单(我可以轻松选择要打印的字母)

import random

EFile=open("ExternalFile.txt","w+")
Info = ["Shotgun","God's Plan","This is me","Solo","Psyco"]
for w in Info:
    EFile.write(w)
EFile.close

RanVar=random.choice(Info)

for i, letter in enumerate(RanVar):
    if i == 0:
        print (letter, end ="")
    else:
        print ('?', end ="")

print ('\n')