lijiachen 发表于 2020-6-17 16:09:44

如何用极其复杂的方式打印‘hello world’[知识点复习]

本帖最后由 lijiachen 于 2020-6-17 16:09 编辑

如何用极其复杂的方式打印‘hello world’

难度:简单

1.列表法:

list1 = ['h','e','l','l','o',' ','w','o','r','l','d']
print(''.join(list1))

使用字符串操作—— .join() 可以将一个字符串放入列表中每两个元素之间,但要求目标列表的内容必须为字符串,本例中是list1。
不过!,记得列表中一定要有那个空格,要不然打印出来就连在一起了。{:10_256:}

2.生成器法:

iter = (i for i in 'hello world')
for i in range(len('hello world')):
    print(next(iter))#这是横向打印的。

用生成器推导式生成生成器(怎么奇奇怪怪的{:10_312:} ),然后用for循环遍历生成器。
遍历生成器一定要用 next() 函数,否则是无法调用的!!!{:10_249:}

3.字典法:

dic = {'h':0,'e':1,'l':2,'L':3,'o':4,' ':5,'w':6,'O':7,'r':8,'I':9,'d':10}

for each in dic.keys():
    print(each)


你们别觉得字怪怪的{:10_269:} ,是因为字典里重复的键值会被抵消掉,所以有的用了大写,还用了大写的i来替换l......{:10_266:} 哎
这段代码是通过字典的内置函数—— .keys() ,它会提取出所有的键值并保存为列表,然后再用for循环遍历列表打印出结果。

class HelloWorld(object):
    def __init__(self):
      print('hello world')
    def hello_again(self):
      print('hello world')

c = HelloWorld()
c.hello_again()

难度:困难(大佬轻喷{:10_254:} )

4.类法:

class HelloWorld(object):
    def __init__(self):
      print('hello world')
    def hello_again(self):
      print('hello world')

c = HelloWorld()
c.hello_again()

主要通过初始化魔法方法 __init__ 让类在被实例化的时候打印‘hello world’。

彩蛋:

PyPi里有个模块叫hello_world,当导入时也能打印hello world(最没用的模块之一)
此处无代码,因为我没下那个包{:10_264:}



新手的第一篇帖子,请大佬轻喷。{:10_254:} {:10_254:}
主要就是总结一下直到 tkinter 以前的所有语法点,不怎么全,如果有人想到更多,欢迎指正

顺便问一句,怎么设置鱼币福利啊,我想给你们发出去我那几个可怜的鱼币{:10_281:}


老八秘制 发表于 2020-6-17 16:27:05

多 此 亿 举

java2python 发表于 2020-6-17 16:52:38

随机生成一万个单词,放到一颗树里,再在里面随机加入hello节点,world节点,然后循环遍历查找这两个,最后完成拼接工程

lijiachen 发表于 2020-6-17 17:52:14

java2python 发表于 2020-6-17 16:52
随机生成一万个单词,放到一颗树里,再在里面随机加入hello节点,world节点,然后循环遍历查找这两个,最后 ...

要不你试试?{:10_256:}

Twilight6 发表于 2020-6-20 11:24:46

{:10_297:} 来了 帮你顶帖顺便给你升个级~

lijiachen 发表于 2020-6-20 11:40:14

Twilight6 发表于 2020-6-20 11:24
来了 帮你顶帖顺便给你升个级~

谢~{:10_323:}{:10_275:}
页: [1]
查看完整版本: 如何用极其复杂的方式打印‘hello world’[知识点复习]