疑问

---恢复内容开始---

1. 虽说dict里的setdefault方法会添加键值对

  但是以下的情况如何解释:

dic1 = {"name":"zhang","age":20,"sex":"male"}
dic1.setdefault("asd")
print(dic1)         #得到空值
dic1.setdefault("asd",123)
print(dic1)
{'name': 'zhang', 'age': 20, 'sex': 'male', 'asd': None}
{'name': 'zhang', 'age': 20, 'sex': 'male', 'asd': None}

这两次都产生了None;为什么不会覆盖?

但是,分着的又不同:

print(dic1)         
dic1.setdefault("asd",123)
print(dic1)
{'name': 'zhang', 'age': 20, 'sex': 'male'}
{'name': 'zhang', 'age': 20, 'sex': 'male', 'asd': 123}

  这又没有了,这是为什么

2.关于C++的putchar();

虽然这种方法我感到很垃圾,但是我还是想知道咋回事:

char a = 'f\n';
putchar(a);
请按任意键继续. . .

 但是如果去掉\n的话又可以了

 

char a = 'f';
putchar(a);
f请按任意键继续. . .

我觉得有可能是char只容纳一个字符的问题,

但是我想换行,那怎么办?

//我想通过printf()改进一下,看看能不能进行分行,但是又出现了其他问题

char c= 'f';
printf("%c\n",putchar(c));
ff
请按任意键继续. . .

 妈的出现了俩f 

3. 关于python中代码对调的问题;

如果k.isalnum() == True 与k.isalpha() == True正向的话

while 1:
    i = input("按下任意键开始,输入'exit'退出")
    if i == 'exit':
        break
    a = []
    while 1:
        j = input("请输入任意字符串")
        for k in j:
            if k.isalpha()==True:
                pass
            elif k.isalnum() == True:
                a.append(int(k))
        print("整数的个数是%d",len(a))
        break
按下任意键开始,输入'exit'退出asd
请输入任意字符串asd1212
整数的个数是%d 4
按下任意键开始,输入'exit'退出

 但是如果把k.isalpha()和k.isalnum对调的话就会报错

while 1:
    i = input("按下任意键开始,输入'exit'退出")
    if i == 'exit':
        break
    a = []
    while 1:
        j = input("请输入任意字符串")
        for k in j:
            if k.isalnum()==True:
                a.append(int(k))
            elif k.isalpha() == True:
                pass
        print("整数的个数是%d",len(a))
        break
按下任意键开始,输入'exit'退出asd
请输入任意字符串as12
Traceback (most recent call last):
  File "C:/Users/admin/PycharmProjects/untitled1/dict嵌套及升级.py", line 72, in <module>
    a.append(int(k))
ValueError: invalid literal for int() with base 10: 'a'

  

 4.关于input()中字符的判断失效问题:


k = input("是否退出?Q/q")

if k == "Q" or 'q':
print("谢谢使用")
    break
是否退出?Q/q
谢谢使用
是否退出?Q/q1
谢谢使用

 我无论输啥都会直接运行到最后,这个条件判断就像失效了一样 

  

posted @ 2019-06-14 22:46  DEVILNEVERCRY  阅读(91)  评论(0)    收藏  举报