我在空闲文件中键入此代码,但在打印时,lines.upper()
尚未应用于变量,为什么会这样,我该怎么办?
lines=input("type your text :")
lines.upper()
print(lines)
答案 0 :(得分:1)
我假设您使用的是Python。然后你应该写这样的代码:
## {"upper", (PyCFunction)string_upper, METH_NOARGS, upper__doc__},
static PyObject *
string_upper(PyStringObject *self)
{
char *s;
Py_ssize_t i, n = PyString_GET_SIZE(self);
PyObject *newobj;
newobj = PyString_FromStringAndSize(NULL, n);
if (!newobj)
return NULL;
s = PyString_AS_STRING(newobj);
Py_MEMCPY(s, PyString_AS_STRING(self), n);
for (i = 0; i < n; i++) {
int c = Py_CHARMASK(s[i]);
if (islower(c))
s[i] = _toupper(c);
}
return newobj;
}
关于str.upper(),document解释说:
返回字符串的副本,并将所有已设置的字符转换为大写。
这意味着str.upper()不会自己更改变量,而是返回转换后的副本。我们可以从str.upper()的source code 确认这一点。
primaryID
即使您使用的是其他程序语言,也应该从官方文档或类似的地方找到答案。