好吧所以我一直在尝试制作这个程序,其中一部分需要我制作一个字符串大写。它没有工作,所以我只是进入一个新的文件并键入3行,它仍然无法正常工作。有人能告诉我为什么这不起作用吗?
word = 'armadillo'
word.upper()
print(word)
打印犰狳,没有帽子。
答案 0 :(得分:2)
您不是在更改单词的内容,而是暂时将其设为大写。要将单词值更改为全部大写,必须以大写形式将其分配给自身。
word = 'armadillo'
word = word.upper()
print(word)
尝试使用此示例,您将看到获得预期的结果。
答案 1 :(得分:0)
您需要将word.upper()
分配给变量。 word.upper()
不会修改word
,因此您需要执行word = word.upper()
之类的操作。
答案 2 :(得分:0)
首先,python字符串对象是不可变的,这意味着如果你想改变它的属性(状态),你就应该创建新的字符串对象。
您想要更改字符串对象的状态,然后您应该创建新的字符串对象,它就是upper()所做的。
word.upper()不会改变'word'本身,但会返回新的字符串。
这应该有效:
create or replace function unsorted_uniq_without_loop(arr anyarray)
returns anyarray language plpgsql as $$
begin
return (
select array_agg(elem)
from (
select elem
from (
select distinct on(elem) elem, row_number() over ()
from unnest(array[arr]) elem
) sub
order by row_number
) sub);
end $$;