rttxps 发表于 2021-2-18 15:09:18

蠢新学python的一个问题

看到一个100题, 第5题 我就不会做了,答案也看不明白
题目是
Define a class which has at least two methods:

getString: to get a string from console input
printString: to print the string in upper case.
Also please include simple test function to test the class methods.


答案是:
class IOstring():
    def get_string(self):
      self.s = input()

    def print_string(self):
      print(self.s.upper())

xx = IOstring()
xx.get_string()
xx.print_string()

没看懂 ,能不能一句一句讲讲 。谢谢

还有其他答案么?

我这么写 报错啊 为什么


x=(str)
def get_string(self,a):
    a=input('enter your string:')
    print(a)
def print_string():
    print(a.get_string.uper)

x.get_string()


逃兵 发表于 2021-2-18 15:27:12

class IOstring(): #定义类IOstring
    def get_string(self): #定义方法get_string
      self.s = input() #从控制台获取字符串s

    def print_string(self): #定义方法print_string
      print(self.s.upper()) #以大写方式输出s

xx = IOstring() #实例化对象xx
xx.get_string() #xx获取字符串s
xx.print_string() #xx以大写方式输出s

李宜文1 发表于 2021-2-18 15:34:01

class IOstring(): #定义类对象
    def get_string(self): #定义方法get_string
      self.s = input() #从控制台获取字符串s

    def print_string(self): #定义方法print_string
      print(self.s.upper()) #以大写方式输出s,str.upper , 将字符串大写

xx = IOstring() #实例化对象xx
xx.get_string() #调用方法
xx.print_string() #调用方法

rttxps 发表于 2021-2-18 16:38:00

李宜文1 发表于 2021-2-18 15:34
class IOstring(): #定义类对象
    def get_string(self): #定义方法get_string
      self.s = input ...

self.s是什么意思?

rttxps 发表于 2021-2-18 16:38:39

李宜文1 发表于 2021-2-18 15:34
class IOstring(): #定义类对象
    def get_string(self): #定义方法get_string
      self.s = input ...

IOstring又是什么啊?

逃兵 发表于 2021-2-18 17:02:48

你基础学一下再做题吧
IOstring 是自定义的类名,没有实质意义,叫个A也没错

self 是关键字
self. 是在访问这个实例的属性

rttxps 发表于 2021-2-18 20:39:13

逃兵 发表于 2021-2-18 17:02
你基础学一下再做题吧
IOstring 是自定义的类名,没有实质意义,叫个A也没错



我是学了,B站杨淑娟老师的那个课程,也没这么讲啊,理解不了self.s
这里s没有定义过啊。

逃兵 发表于 2021-2-19 07:50:16

rttxps 发表于 2021-2-18 20:39
我是学了,B站杨淑娟老师的那个课程,也没这么讲啊,理解不了self.s
这里s没有定义过啊。

这里self.s = input()
定义的s
页: [1]
查看完整版本: 蠢新学python的一个问题