对于一个OIer,Python能干些什么?
EliClark266
2020-04-13 15:59:05
# Part 0 写在前面
Python是一门比较新的编程语言,火的相当迅速。
这一篇文章会比较全面的告诉你:**OIer可以用Python来干嘛?**
如有不足,请指出。
[更好地阅读体验](https://www.cnblogs.com/sdltf/p/12692014.html)
---
# Part 1 用来出数据
## Part 1.1 高精度
众所周知,``Python``自带高精度,这里我们来演示一下如何出一个高精度``A+B``的数据:
```python
import random
fin = open("data1.in", "w")
fou = open("data1.out","w")
a = str(random.randint(1000000000000000, 10000000000000000000000000))
b = str(random.randint(1000000000000000, 10000000000000000000000000))
fin.write(a)
fin.write("\n")
fin.write(b)
fou.write(str(int(a)+int(b)))
# 下面两句特别重要,否则你的文件永远是空的哦
fin.close()
fout.close()
```
这比你C++一个个敲``str[i] = rand()%100000``好玩多了吧~
## Part 1.2 eval的运用
``eval``是个语法糖,用于计算表达式的值。
下面这个例子,用来造一个表达式,并且输出他的值:
```python
import random
chart = ['+','-','*','/','%']
string = ""
for i in range(0, 20):
string = string + str(random.randint(0,100))
string = string + chart[random.randint(0,4)]
string = string + str(random.randint(0,100))
print(string)
print(eval(string))
```
输出:
>``10-32+37-98*82*96/78/54+59-43+68-16%38*81%5+44*86*79*77-14-68``
>``23017904.843304843``
## Part 1.3 用Luogu的CYaRon造数据
过程略,[链接](https://www.luogu.com.cn/discuss/show/11410)
# Part 2 考场用法(继续更新)
## Part 2.1 OJ上
### Part 2.1.1 高精度
在有些OJ上,我们可以用Python来提交代码。
比如:
兄嘚,懂?(一脸奸笑)
---
## 附 Python的下载
下载肯定是要到[官网](https://www.baidu.com/link?url=vvvKjA9E763zURjn5rOyHtD7AttiRmAeF8WTgym1OS6c58grJw_UNwP3X86i9Q34&wd=&eqid=bcb88768001cf5f1000000045e940fe4)下载啦~
点开,你会看到这个图片:
![image.png](https://i.loli.net/2020/04/13/pr5agbfsUz8nmhE.png)
Windows用户直接点``download``就好,其他系统的用户可以往下翻。
![image.png](https://i.loli.net/2020/04/13/7wvrGLtSE8UAspB.png)
下载来后,点开。
![image.png](https://i.loli.net/2020/04/13/Mk97ewXztxKOWBY.png)
``Install Now``不建议,我们选择``Customize installation``。
全部勾选,一路下一步即可。
所以,``win+r``+输入``cmd``打开,输入``python -v``
![image.png](https://i.loli.net/2020/04/13/TAnCcg12NJ3B4HP.png)
什么?你没有出现?
请翻到上面的一个图,你点了``Add Python 3.8 to Path``吗?
![](https://i.loli.net/2020/04/13/7imSgw5IL3THZU8.png)
哈哈哈哈如果你不想点开安装包重新安装,打开你的``CMD``,输入:
```cpp
path=%path%;[你安装的路径]
举个例子:path=%path%;C:\Python
```
重启``CMD``,解决!