我正在开发一个程序,需要用户的大量输入,
如果他正在写/end
,程序将结束并用他的输入打印一个字符串。
我还补充说,如果用户的字符串以疑问词开头,它将自动在字符串中添加问号。
现在,我的问题是我不知道如何将所有字符串放在一起,我只用append
尝试过,但是没有用。
程序:
def stringCreator(mySTR):
capitalized = mySTR.capitalize()
questions = ('what', 'how', 'can', 'why')
if mySTR.startswith(questions):
return '{}?'.format(capitalized)
else:
return '{}.'.format(capitalized)
result = # What should I use there ?
while True:
userInput = input('Say something: ')
if userInput == '/end':
break
else:
# Connect all string together with result
print(' '.join(stringCreator(result)))
编辑:
在沃尔夫的帮助下,我得到了这个结果。
首先,我列出了result
变量,其次,我已将else
条件添加到result.append(userInput)
,
然后我从更改了print
函数
print(' '.join(stringCreator(result)))
到print(stringCreator(''.join(result)))
。
最终程序:
def stringCreator(mySTR):
capitalized = mySTR.capitalize()
questions = ('what', 'how', 'can', 'why')
if mySTR.startswith(questions):
return '{}?'.format(capitalized)
else:
return '{}.'.format(capitalized)
result = []
while True:
userInput = input('Say something: ')
if userInput == '/end':
break
else:
result.append(userInput)
print(stringCreator(' '.join(result)))
参考方案
这里有很多选择。效率最低,但最简单的方法可能是直接附加到字符串:
result = ''
...
result += userInput # optionally + '\n'
更好的方法是将其追加到列表中,然后再加入:
result = []
...
result.append(userInput)
...
result = ' '.join(result) # or '\n'
最好的方法可能是使用稍微更专业的数据结构,例如collections.deque
,以使附加效率更高:
from collections import deque
...
result = deque()
...
deque
的界面与列表的界面非常相似,但是它不能非常有效地进行直接索引。
我在Angular工作,正在使用Http请求和响应。是否可以在“响应”中发送多个参数。角度文件:this.http.get("api/agent/applicationaware").subscribe((data:any)... python文件:def get(request): ... return Response(seriali…
R'relaimpo'软件包的Python端口 - python我需要计算Lindeman-Merenda-Gold(LMG)分数,以进行回归分析。我发现R语言的relaimpo包下有该文件。不幸的是,我对R没有任何经验。我检查了互联网,但找不到。这个程序包有python端口吗?如果不存在,是否可以通过python使用该包? python参考方案 最近,我遇到了pingouin库。
如何用'-'解析字符串到节点js本地脚本? - python我正在使用本地节点js脚本来处理字符串。我陷入了将'-'字符串解析为本地节点js脚本的问题。render.js:#! /usr/bin/env -S node -r esm let argv = require('yargs') .usage('$0 [string]') .argv; console.log(argv…
Python:传递记录器是个好主意吗? - python我的Web服务器的API日志如下:started started succeeded failed 那是同时收到的两个请求。很难说哪一个成功或失败。为了彼此分离请求,我为每个请求创建了一个随机数,并将其用作记录器的名称logger = logging.getLogger(random_number) 日志变成[111] started [222] start…
Python-Excel导出 - python我有以下代码:import pandas as pd import requests from bs4 import BeautifulSoup res = requests.get("https://www.bankier.pl/gielda/notowania/akcje") soup = BeautifulSoup(res.cont…