刚学 python 就掉到这个坑出不来了
文件代码如下
#coding=utf-8
name = input()
print name
运行后如果输入的是数字就正常
如果是英文字母报错
NameError: name 'i' is not defined
如果输入中文报错
SyntaxError: invalid syntax
编辑器编码设置的 utf-8 用的 pyCharm 编辑器
1
zeroDev 2019-02-23 12:22:43 +08:00 via Android 1
这是 Python2 ?
|
2
malusama 2019-02-23 12:23:48 +08:00 via Android 1
换 Python3 别再编码上鼓捣了…
|
3
zeroDev 2019-02-23 12:24:54 +08:00 via Android 1
Python3 是没有问题的
Python 3.6.7 (default, Oct 22 2018, 11:32:17) [GCC 8.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> i = input() gggg >>> print(i) gggg >>> i = input() 你好 >>> print(i) 你好 |
4
luxcen OP 看的菜鸟教程,下载的 2.7
|
5
luxcen OP 怎么卸载 python2 啊
|
6
wang9571 2019-02-23 12:37:30 +08:00 2
python2 里 input 接收非 int 型需要用引号括起来。
# root @ Arch-PC in ~ [12:35:08] $ python2 test.py Hello Traceback (most recent call last): File "test.py", line 2, in <module> name = input() File "<string>", line 1, in <module> NameError: name 'Hello' is not defined # demo @ Arch-PC in ~ [12:35:25] $ python2 test.py "Hello" Hello 你也可以改用 raw_input |
7
Very0ldMan 2019-02-23 13:06:31 +08:00 1
改用 Python3 吧,去 YouTube 上面大把的教程
|
8
so1n 2019-02-23 13:20:29 +08:00 via Android 1
改用 3,如果 linux 系统,别卸载里面的 python2
|
9
whoami9894 2019-02-23 13:40:13 +08:00 1
2 里你得用 raw_input, 2 的 input()是 eval(raw_input())
|
10
luxcen OP 多谢各位,我是 windows 已经卸了 2 装 3 了
|
11
Wisho 2019-02-23 14:35:22 +08:00
9102 年了,真心不要再折腾 py2 里的一些奇怪的点了,py3 搞起就好了。
|
12
luxcen OP @Wisho 不是想折腾,刚接触 python,不懂这些,看的菜鸟教程里说的下载 2.7 然后我就装了 2.7
已经改 3 了 |
13
nichijou 2019-02-23 16:41:25 +08:00
不会 python,不过你输入字符串是不是没加引号?
|
14
shange123 2019-02-23 16:45:31 +08:00
py2 字符串需要 raw_input()
|
15
trys1 2019-02-23 17:43:36 +08:00 via Android
菜鸟里面也有 3,建议不要看 2,直接看 3
|
16
Dram001 2019-02-23 17:54:47 +08:00 via Android
9102 年还学 Python2。。。我看着 Linux 自带的 Python2 都想删
|
17
Ginson 2019-02-23 18:01:13 +08:00
欢迎楼主接触 Python
|
18
Ginson 2019-02-23 18:02:26 +08:00
|
21
l985654987 2019-03-14 16:12:55 +08:00
https://docs.python.org/zh-cn/3.6/
这是 3.6 的官方中文文档 |