windows版python下载:

  https://pan.baidu.com/s/1dsAPp0C9PJUF73kFDdAzXQ

  安装时勾选pip和Add python.exe to Path。

windows版pycharm下载:

  https://pan.baidu.com/s/1DV81hxSsodtukUHNW-Bzgg

一些基础知识:

  1、if __name__ == '__main__'的意思是:

    当.py文件被直接运行时,if __name__ == '__main__'之下的代码块将被运行;当.py文件以模块形式被导入时,if __name__ == '__main__'之下的代码块不被运行。

  2、在python执行py文件

    1. import sys #引入sys库体
    2. sys.path.append("C://myPython") #往系统路径中加入自己存放py文件的地址 
      然后就可以开始通过import的方法导入相关的方法和内容了
    3. from test import * #从test.py文件中加载所有的内容。

文件读写:

  with open(r'f:\test\t1.txt','r') as f:
    print f.read()      读

  f.close()    关闭

  with相当于try...catch;  

  按行读:

  with open(r'f:\test\t1.txt','r') as f:
    for l in f.readlines():
      print l.strip()

  f.close()

  写文件:  

  with open(r'f:\test\t1.txt','w') as f:
    f.write('abcde')

  f.close()

序列化:

  import cPickle as pickle  引入包

  with open(r'f:\test\t1.txt', 'wb') as f:
    dic = 10
    pickle.dump(dic, f)

  f.close()

  with open(r'f:\test\t1.txt', 'rb') as f:
    aa = pickle.load(f)
    print(aa)

  f.close()

多线程:

  

import random
import time,threading
def thread_run(urls):
  for url in urls:
    print "%s ---->>>> %s"%(threading.current_thread().name,url)
    time.sleep(random.random())
  print "thread %s end..."%threading.current_thread().name

t1 = threading.Thread(target=thread_run,name="Thread_1",args=(["url_1","url_2","url_3"],))
t2 = threading.Thread(target=thread_run,name="Thread_1",args=(["url_4","url_5","url_6"],))
t1.start()
t2.start()
t1.join()
t2.join()
print "end....."

  

 //join是主线程等待子线程

  

import random
import threading
import time
class myThread(threading.Thread):
def __init__(self,name,urls):
threading.Thread.__init__(self,name=name)
self.urls = urls def run(self):
for url in self.urls:
print "%s ---->>> %s" %(threading.current_thread().name,url)
print "%s ended..."%threading.current_thread().name t1 = myThread(name="Thread_1",urls=["url_1","url_2","url_3"])
t2 = myThread(name="Thread_2",urls=["url_4","url_5","url_6"])
t1.start()
t2.start()
t1.join()
t2.join()
print "%s end...." %threading.current_thread().name

  线程同步:

import random
import threading
import time
mylock = threading.RLock()
class myThread(threading.Thread):
def __init__(self,name,urls):
threading.Thread.__init__(self,name=name)
self.urls = urls def run(self):
for url in self.urls:
mylock.acquire()
print "%s ---->>> %s --" %(threading.current_thread().name,url)
mylock.release() t1 = myThread(name="Thread_1",urls=["url_1","url_2","url_3"])
t2 = myThread(name="Thread_2",urls=["url_4","url_5","url_6"])
t1.start()
t2.start()
t1.join()
t2.join()
print "%s end...." %threading.current_thread().name

  

Python初学1的更多相关文章

  1. 孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备

     孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天本来应当继续学习Python的数据库操作,但根据过去我自 ...

  2. Python初学笔记之字符串

    一.字符串的定义 字符串是就一堆字符,可以使用""(双引号).''(单引号)来创建. 1 one_str = "定义字符串" 字符串内容中包含引号时,可以使用转 ...

  3. Python初学的易犯错误

    当初学 Python 时,想要弄懂 Python 的错误信息的含义可能有点复杂.这里列出了常见的的一些让你程序 crash 的运行时错误. 1)忘记在 if , elif , else , for , ...

  4. Python初学

    经同学推荐,学习了下Python语言,看Python的介绍,它本身是一个面向对象的解释型脚本语言,我初看到这句话的时候就在想,一个脚本语言还搞成面向对象?有这个必要么?原谅我肤浅了一把. 它还被俗称为 ...

  5. python 初学笔记 (一)

    初学python第一天,希望自己真正了解计算机语言,并且做出成效. 写下学习笔记,记录学习进度,娱乐学习,不断成长. python详细介绍: python是什么?运用到哪里?有哪些在使用它? pyth ...

  6. Python初学(1)

    最近在学习python,以后想编写一些工作中用的到的脚本.python的入门我选择了<python从初学到入门>,这篇文章我会跟进我的学习进度.算是一个笔记吧. 我本身是熟悉C语言的,看p ...

  7. python初学心得之一

    昨天开始接触并学习python,对python有了初步印象. 一.python主要应用方向 二.python语言类型 三.python2和3的主要区别 四.常见字符编码 五.Python语法初学  一 ...

  8. python初学杂记

    python常用命令: 1.python 或者 python3  打开交互式python解释器 2.python hello.py   通过命令提示符运行python脚本 交互式python解释器常用 ...

  9. Mac下python初学之Image库(PIL)

    Mac下python 使用Image库 安装PIL,下载http://www.pythonware.com/products/pil/ 解压PIL源码包,阅读README知道需要使用python se ...

  10. python初学day01

    1.执行Python脚本时打印的字符有颜色 1. print "\033[32;1mhello\033[0m" #打印绿色 2. print "\033[31;1mhel ...

随机推荐

  1. HDU 1249 三角形的分割

    可以将三角形的三条边一条一条加进图形中观察 假设添加第n个三角形 前n-1个三角形将区域划分为sum[n-1] 第n个三角形每条边最多能经过前n-1个三角形每条三角形的两条边 , 一条边切完增加了 2 ...

  2. Extended symmetrical multiprocessor architecture

    An architecture for an extended multiprocessor (XMP) computer system is provided. The XMP computer s ...

  3. nyoj_600_花儿朵朵_201404162000

    花儿朵朵 时间限制:1000 ms  |  内存限制:65535 KB 难度:5   描述 春天到了,花儿朵朵盛开,hrdv是一座大花园的主人,在他的花园里种着许多种鲜花,每当这个时候,就会有一大群游 ...

  4. ORA_ROWSCN

    这是一个非常重要的特性.从oracle10g开始,oracle在表上引入了一个伪列ORA_ROWSCN.该列记录了每一列最后更改的SCN.但是有两种模式,一种是默认的是data block级别,另一种 ...

  5. C++ new malloc realloc

    int* a = new int;          分配了存储空间,但没有赋初值 int* a = new int(10)     分配了存储空间,并赋初值,即*a = 10 int* a = ne ...

  6. postgresql备份和恢复

    备份: pg_dump -d m3vg -h localhost -p 5432 -U delta -W -f 1024.dump -F tar 恢复: pg_restore -h localhost ...

  7. CUDA编程(二) CUDA初始化与核函数

    CUDA编程(二) CUDA初始化与核函数 CUDA初始化 在上一次中已经说过了,CUDA成功安装之后,新建一个project还是十分简单的,直接在新建项目的时候选择NVIDIA CUDA项目就能够了 ...

  8. squid配置透明代理

    搞了半个月的squid普通代理和透明代理最终差点儿相同了!! squid配置透明代理主要有两步.见图: 第一个基本的步骤:设置client默认网关,让默认网关指向squid代理server water ...

  9. jquery注冊文本框获取焦点清空,失去焦点赋值

    在我们开发过程中特别是用户注冊时会有一个效果.就是文本框获取焦点清空提示,假设用户没有输入信息失去焦点赋值上我们的提示语 <html> <head> <meta http ...

  10. SoapUI项目书写自我规范

    -->Assertions 判断某个节点存在(_input_name, _button_name) -->Resource 文件夹命名 值去掉红色部分信息 https://mercury- ...