pycharm问题
- bad operand type for unary +: 'str'
字符串相加时多了额外的逗号。
正确的应该是下面这样:
“股票名:" + share.name + "当前价格:" + str(share.price)也就是逗号后不能紧跟着+号。
-
Unused import statement解决方法
![]()
这个并不是报错,只是提示当前代码中没有用到这个包而已,后面的代码用到这个包的话,它会自动恢复高亮的
-
pycharm import cx_Oracle模块引发的No module named 'custom_exceptions'
E:\python\learn_python1\venv\Scripts\python.exe E:/python/learn_python1/cx_Oracle_test1.py
Traceback (most recent call last):
File "E:/python/learn_python1/cx_Oracle_test1.py", line 1, in <module>
import cx_Oracle as cx
File "E:\python\learn_python1\venv\lib\site-packages\cx_Oracle\__init__.py", line 10, in <module>
from custom_exceptions import Warning, Error, InterfaceError, DatabaseError, DataError, OperationalError, IntegrityError, InternalError, ProgrammingError, NotSupportedError
ModuleNotFoundError: No module named 'custom_exceptions'
Process finished with exit code 1
因为最开始在pycharm上查找cx_Oracle模块的时候没有找到,就随便安装了一个cx_oracle_on_ctypes模块,后面了解到pycharm上cx_Oracle模块的名字是cx-Oracle,然后重新安装,就报了提问的那个错误。刚刚测试了一下,把该项目下的cx_oracle_on_ctypes这个模块删除了,然后import cx_Oracle就正常了。
4.无法保存问题,一般为未经管理员权限登录所致。
5.TypeError: 'type' object is not subscriptable
for i in range(2000):
read_lines = random.shuffle(read_lines) # 问题出在这里了 print(read_lines)咋一看是没啥问题,但是一运行就报错
TypeError: 'NoneType' object is not subscriptable解决方案
把上面一行赋值语句改掉就好了
for i in range(2000):
random.shuffle(read_lines) print(read_lines) content_list = []a=int(input('请输入a值:'))
print('您输入的a=',a)
b=int(input('请输入b值:'))
print('您输入的b=',b)
print('a+b=',a+b);
7.NameError: name 'null' is not defined
- 原因:将字符串转为字典时,存在null值
ret = '{"createdAt":"","updatedAt":"", "dataSets":null}'
ret = eval(ret)
print(ret)out:
ret = eval(ret)
File "<string>", line 1, in <module>
NameError: name 'null' is not defined
解决办法,使用json.loads()函数:将json格式数据转换为字典,存在null时,转为None
import json
ret = '{"createdAt":"","updatedAt":"", "dataSets":null}'
ret = json.loads(ret)
print(ret)
print(type(ret))
out:
{'createdAt': '', 'updatedAt': '', 'dataSets': None}
<class 'dict'>
9.python中出现invalid syntax报错的几种原因
- 符号使用不正确 例如:只写了半个括号,使用了中文符号等
有些解释器会有自动补全符号的功能。有些则没有,这时对于新手朋友要特别注意,在写成对的符号时(例如括号、引号等)一定要一次把一对符号写完,再在符号中填写内容,避免因这种情况出现bug,后续检查花费大量时间。
- 代码缩进问题
python是一种严格依赖缩进的语言,如果缩进不正确或缩进格式不统一,一般错误信息会明确告诉你,但有时也会出现invalid syntax报错。
所谓缩进不正确,python的缩进是四个空格或一个TAB,如果缩进三个空格,一定报错
所谓缩进格式,即不能空格和TAB混用。如果不清楚是否存在混用,可以使用sublime统一调整即可。
10.sql判断字段是否为空
sql语句条件查询时,有时会判断某个字段是否为空。
字段内容为空有两种情况
1.为null
2.为字符串的空''
语句如下:
select * from table where column is null or trim(column)=''
这样就可以排除字段内容为null、''的。
判断某个字段不为空
select * from table where trim(column) != ''
曾经尝试判断null:is not null.但是不起作用,放弃。。。直接 trim(column) != '' 就能解决。


浙公网安备 33010602011771号