运行python有三种方式
1.交互式解释器模式:
dos —》cmd
python/python3 进入编辑模式
exit() #退出编辑
2.命令行脚本模式:
使用记事本新建一个hello.py结尾的文件
在文件中写入要执行的代码,最后在控制台输入以下的命令进行执行 python/python3 hello.py
3.集成开发环境(IDE):PyCharm
PyCharm 是由 JetBrains 打造的一款 Python IDE,支持 macOS、 Windows、 Linux 系统。
PyCharm 功能 : 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制……
PyCharm 下载地址 : https://www.jetbrains.com/pycharm/download/
注常用的dos命令:
dir 查看当前目录下所有文件
cd 路径 跳转到指定路径
cd .. ..代表的是上一级目录
“#”单行注释
”””:多行注释
print “hello world!” 输出
注意:Mac安装俩个python版本,2和3,python2系列可以支持 print “xxxx” ,python3系列需要使用print(“xxx”)
Pyhton中文编码
pyhton中未指定编码格式,遇到中文的时候,执行可能会报错:
#!/user/bin/python
print "你好,世界!"
python2中会报以下错误
MacBook-Pro:python练习 zhangjiao$ python test.py
File "test.py", line 2
SyntaxError: Non-ASCII character '\xe2' in file test.py on line 2, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
Python2.x中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。
注意:解决方法为只要在文件开头加入 # – coding: UTF-8 – 或者 #coding=utf-8 就行了
#!/user/bin/python
#-*- coding:utf-8 -*-
print "你好,世界!"
Pycharm 设置步骤:
- 进入 file > Settings,在输入框搜索 encoding。
- 找到 Editor > File encodings,将 IDE Encoding 和 Project Encoding 设置为utf-8。
拓展
直接像.exe文件那样运行.py 文件,在windows上是不行的,但是,在Mac和Linux上是可以的,方法是在.py文件的第一行加上一个特殊的注释:
#!/user/bin/env python3
print('hello world')
然后通过命令给hello.py以执行权限
$ chmod a+x hello.py
就可以直接运行hello.py了。
输入与输出
输出
使用print()在括号中加上字符串,就可以向屏幕中输出指定的文字,比如输出“hello world”,用以下代码实现
print("hello world")
print()函数也可以同时输出多个字符串,用使用逗号“,”隔开
print("hello", "how", "are", "you")
print()会依次打印每个字符串,遇到逗号“,”会输出空格。输出的内容是这样的:
hello how are you
print()可以打印整数,或者计算结果
>>>print(300)
300
>>>print(100 + 200)
300
我们也可以把打印的结果显示的再漂亮一些
>>>print("100 + 200 =", 100 + 200)
100 + 200 = 300
注意:对于字符串”100 + 200 =”它会原样输出,但是对于100+200,python解释器自动计算出结果为300,因此会打印出上述的结果。
输入:
Python提供了一个input()函数,可以让用户输入字符串,并且存放在变量中,比如输入用户名
>>> name = input()
jean
如何查看输入的内容:
>>> name
'jean'
或者使用:
>>> print(name)
jean
当然,有时候需要友好的提示一下,我们也可以这样做:
>>> name = input("place enter your name")
place input your name jean
>>> print("hello,", name)
hello, jean
**【面试题】
问题:计算机底层处理数据的时候采用的是原码,反码还是补码?**
拓展:
使用bin(),oct(),hex()进行转换的时候的返回值均为字符串,且带有0b, 0o, 0x前缀.
十进制转换为二进制
>>> bin(10)
'0b1010'
>>>'{0:b}'.format(10)
'1010'
十进制转为八进制
>>> oct(12)
'014'
>>> '{0:o}'.format(12)
'14'
十进制转为十六进制
>>> hex(12)
'0xc'
>>> '{0:x}'.format(12)
'c'
二进制转为十进制
>>> int('1010',2)
10
>>> eval('0b10')
2
>>> '{0:d}'.format(0b1010)
'10'
八进制转为十进制
>>> int('014', 8)
12
>>> '{0:d}'.format(0o14)
'12'
>>> eval('0o10')
8
十六进制转十进制
>>> int('0xc',16)
12
>>> '{0:d}'.format(0xc)
'12'
>>> eval('0x10')
16
注意:
hex函数比格式化字符串函数format慢,不推荐使用.
eval函数比int函数慢,不推荐使用
二进制, 十六进制以及八进制之间的转换,可以借助十进制这个中间值,即先转十进制再转其他的进制,也可以直接使用函数进制转换.
#借助十进制
>>> bin(int('fc',16))
'0b11111100'
#利用函数直接转
>>> bin(0xa)
'0b1010'
>>> oct(0xa)
'012'
>>> hex(10)
'0xa'