哪个函数使用户输入字符串不区分大小写?
correctAnswer = "London"
userGuess = input("What is the capital of Great Britain?: ")
if userGuess == "London":
print("Correct!")
else:
print("Wrong")
我在字符串后尝试了以下功能:
.lower()
.capitalize()
.casefold()
输出仍然是“错误的”,尽管输入为:
-伦敦
-lOndoN
-loNDON
以此类推。
答案 0 :(得分:5)
在字符串比较中,正确答案本身的首字母大写。
correctAnswer = "london"
userGuess = input("What is the capital of Great Britain?: ").lower()
if userGuess == correctAnswer:
print("Correct!")
else:
print("Wrong")
答案 1 :(得分:1)
我认为您的问题是correctAnswer
不是小写,而是titled。 Python不会区分大小写,但是您可以将相同的函数应用于正确的答案,并使用userGuess进行比较。
您的选择是:
.lower()
应用于correctAnswer
correctAnswer
更改为correctAnswer = "london"
并使用userGuess.lower()
userGuess.title()
和correctAnswer = "London"
答案 2 :(得分:0)
比较不区分大小写的字符串时,通常将所有字母与小写字母进行比较。
实际上,在您的程序中,没有必要将输入与if (move_uploaded_file($_FILES['recording']['tmp_name'], $uploadfile_recording))
{
echo "Datei ist valide und wurde erfolgreich hochgeladen.\n";
}
else
{
echo "<center><h3>Fehlercode MPU_01, melden sie sich mit dem Fehlercode beim Administrator!\n</h3></center>";
}
//IMAGE
if (move_uploaded_file($_FILES['imagefile']['tmp_name'], $uploadfile_image))
{
echo "Datei ist valide und wurde erfolgreich hochgeladen.\n";
}
else
{
echo "<center><h3>Fehlercode MPU_02, melden sie sich mit dem Fehlercode beim Administrator!\n</h3></center>";
}
//PDF
if (move_uploaded_file($_FILES['leitfadenpdf']['tmp_name'], $uploadfile_pdf))
{
echo "Datei ist valide und wurde erfolgreich hochgeladen.\n";
}
else
{
echo "<center><h3>Fehlercode MPU_03, melden sie sich mit dem Fehlercode beim Administrator!\n</h3></center>";
}
//SQL EINTRAG
$eintrag = sprintf("INSERT INTO podcast_data (title, recording, date, speaker, series, description, imagefile, leitfadenpdf, visable) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')",
mysqli_real_escape_string($db, $title),
mysqli_real_escape_string($db, $uploadfile_recording),
mysqli_real_escape_string($db, $date),
mysqli_real_escape_string($db, $speaker),
mysqli_real_escape_string($db, $series),
mysqli_real_escape_string($db, $description),
mysqli_real_escape_string($db, $uploadfile_image),
mysqli_real_escape_string($db, $uploadfile_pdf),
mysqli_real_escape_string($db, $visable));
$eingetragen = mysqli_query($db, $eintrag);
if($eingetragen == true)
{
echo "YES";
}
else
{
echo "wrong";
}
(大写的“ l”)进行比较,这就是为什么您应该与London
比较的原因。
比较方式如下:
london
注意
我在if语句中而不是在输入语句中使用了correct_answer = "london"
userGuess = input("What is the capital of Great Britain?: ")
if userGuess.lower() == correct_answer:
print("Correct!")
else:
print("Wrong")
方法。这样比较好,因此您可以保持用户的输入不变,也许以后可以用其他方式使用它。
答案 3 :(得分:0)
您可以尝试以下方法:
correctAnswer = "London"
userGuess = input("What is the capital of Great Britain?: ")
userGuess = userGuess.capitalize()
#print(userGuess)
if userGuess == correctAnswer:
print("Correct!")
else:
print("Wrong")
capitalize()方法将字符串的第一个字符转换为大写(大写)字母。