我想用upperandlower字母组合字母输入一个单词然后当我按Enter键时它会改变反之亦然
def changer(word):
for letter in word:
if letter.isupper():
letter.lower()
elif letter.islower():
letter.upper()
print word
word = raw_input() 变换器(字)
答案 0 :(得分:0)
您必须将转换后的字母附加到新字符串,并且返回新字符串也很有帮助。
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class scene1 extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Button button=new Button("problem");
Pane pane1=new Pane();
pane1.setPrefSize(600, 600);
Scene sceneNew=new Scene(pane1, Color.AQUAMARINE);
primaryStage.setScene(sceneNew);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
答案 1 :(得分:0)
......你什么都不回。和python中的字符串是不可变的;你不能就地改变它们。
这是你可以尝试的:
def swapcase(word):
return ''.join(c.lower() if c.isupper() else c.upper() for c in word)
print(swapcase(word='Hello')) # hELLO
其中我使用str.join
加入生成器,该生成器使用交换的大小写迭代字符。
速度str.translate
可能是更好的选择:
from string import ascii_lowercase, ascii_uppercase
trans_table = str.maketrans(ascii_lowercase + ascii_uppercase,
ascii_uppercase + ascii_lowercase)
def swapcase(word):
return word.translate(trans_table)
print('Hello'.translate(trans_table)) # hELLO