基礎(chǔ)語(yǔ)法
- 編碼問(wèn)題:文件開(kāi)頭加
# -*- coding: utf-8 -*- - 變量賦值無(wú)需聲明類(lèi)型
- 語(yǔ)句末尾無(wú)需" ; "等表示結(jié)尾
- 以4個(gè)空格的縮進(jìn)控制模塊
- 函數(shù)及邏輯判斷后要加冒號(hào)
執(zhí)行.py文件的方式
-
cd到文件所在的目錄 -
python filename.py
(如果有問(wèn)題的話考慮chmod 777 filename.py)
模塊
hello.py
def say_hello(par):
print 'Hello, ', par
return
main.py(同一目錄下)
import hello
hello.say_hello('Jack')
或
from selenium import webdriver
I/O
print 'Hello, %s! * %d' % ('python', 3)
#涉及到中文的輸出要在引號(hào)前加上字母u,強(qiáng)制進(jìn)行unicode編碼
str1 = raw_input('raw_input輸入')
print u'raw_input輸出', str1
輸出結(jié)果
Hello, python! * 3
raw_input輸入QWERTY
raw_input輸出 QWERTY
數(shù)據(jù)類(lèi)型
五個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型:
Numbers(數(shù)字),String(字符串),List(列表),Tuple(元組),Dictionary(字典)
賦值
age = 23 #整型
height = 1.85 #浮點(diǎn)
name = 'jackie' #字符串
a, b, c = 10, 20, 'jjqqkk' #為多個(gè)變量賦值
list1 = ['cat', 'dog', 100, 200] #列表
tup1 = ('apple', 'iphone', 2016, 2017) #元組
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
字符串操作
str = 'Welcome to PYTHON'
print str #完整字符串 'Welcome to PYTHON'
print str[0] #第一個(gè)字符 'W'
print str[1:4] #第2個(gè)到第4個(gè)之間的字符串(不包括冒號(hào)后面那一位) 'elc'
print str[5:] #從第6個(gè)字符開(kāi)始的字符串 'me to PYTHON'
print str * 3 #輸出3次字符串 'Welcome to PYTHONWelcome to PYTHONWelcome to PYTHON'
print str + ' lol' #字符串拼接 'Welcome to PYTHON lol'
運(yùn)算符
以下假設(shè)變量: a=10,b=20
| 運(yùn)算符 | 描述 | 實(shí)例 |
|---|---|---|
| + | 加 - 兩個(gè)對(duì)象相加 | a + b 輸出結(jié)果 30 |
| - | 減 - 得到負(fù)數(shù)或是一個(gè)數(shù)減去另一個(gè)數(shù) | a - b 輸出結(jié)果 -10 |
| * | 乘 - 兩個(gè)數(shù)相乘或是返回一個(gè)被重復(fù)若干次的字符串 | a * b 輸出結(jié)果 200 |
| / | 除 - x除以y | b / a 輸出結(jié)果 2 |
| % | 取模 - 返回除法的余數(shù) | b % a 輸出結(jié)果 0 |
| ** | 冪 - 返回x的y次冪 | a**b 為10的20次方, 輸出結(jié)果 100000000000000000000 |
| // | 取整除 - 返回商的整數(shù)部分 | 9//2 輸出結(jié)果 4 , 9.0//2.0 輸出結(jié)果 4.0 |
Python2.x的版本中,整數(shù)除整數(shù),得到的結(jié)果都是整數(shù)。要想結(jié)果是小數(shù),需要除數(shù)和被除數(shù)中至少有一個(gè)浮點(diǎn)數(shù)。
列表
list1 = ['cat', 'dog', 100, 200]
#輸出指定項(xiàng)
print list1[0]
print list1[1:3]
#更list1新列表
list1[2] = 1100
list1.append(300)
for x in list1:
print x
#刪除元素
del list1[2]
print list1
print len(list1)
#拼接列表
list2 = ['qqq', 111]
list1 += list2
print list1
輸出結(jié)果
cat
['dog', 100]
cat
dog
1100
200
300
['cat', 'dog', 200, 300]
4
['cat', 'dog', 200, 300, 'qqq', 111]
元組
tup1 = () #創(chuàng)建空元組
tup2 = (123,) #創(chuàng)建只有一個(gè)元素的元組
del tup1 #刪除元組
字典
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
#更新字典
dict['Age'] = 8;
dict['School'] = "DPS School";
print dict
#刪除鍵值對(duì)
del dict['Age']
print dict
#清除字典
dict.clear()
print dict
輸出結(jié)果
{'School': 'DPS School', 'Age': 8, 'Name': 'Zara', 'Class': 'First'}
['School', 'Name', 'Class'] ['DPS School', 'Zara', 'First']
{}
語(yǔ)句
條件語(yǔ)句
num = 10
if num < 0 or num > 10: # 判斷值是否在小于0或大于10
print 'hello'
else:
print 'undefine'
# 輸出結(jié)果: undefine
while循環(huán)
num1 = 0
while num1 < 10:
num1 += 1
if num1 %2 > 0:
continue
print num1
print '---------'
num2 = 0
while 1:
print num2
num2 += 1
if num2 > 5:
break
輸出結(jié)果
2
4
6
8
10
---------
0
1
2
3
4
5
for循環(huán)
animals = ['cat', 'dog', 'monkey']
#函數(shù)len()返回列表的長(zhǎng)度,也就是列表中元素的個(gè)數(shù),range()用于返回一個(gè)序列的數(shù)。
for index in range(len(animals)):
print u'動(dòng)物有:', animals[index]
輸出結(jié)果
動(dòng)物有: cat
動(dòng)物有: dog
動(dòng)物有: monkey
其他
隨機(jī)數(shù)
import random
randomNumber = int(random.uniform(1,10)) #取1-10之間的隨機(jī)整數(shù)
日期和時(shí)間
import time
import calendar
print time.time()
print time.localtime(time.time())
print time.asctime(time.localtime(time.time()))
print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
print '----------------'
print calendar.month(2017, 7)
輸出結(jié)果
1506503049.9
time.struct_time(tm_year=2017, tm_mon=9, tm_mday=27, tm_hour=17, tm_min=4, tm_sec=9, tm_wday=2, tm_yday=270, tm_isdst=0)
Wed Sep 27 17:04:09 2017
2017-09-27 17:04:09
----------------
July 2017
Mo Tu We Th Fr Sa Su
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
異常處理
while 1:
try:
num1 = raw_input('被除數(shù):')
num2 = raw_input('除數(shù):')
result = int(num1) / int(num2)
except BaseException:
print '異常' + '\n'
else:
print '結(jié)果:', result, '\n'
輸出結(jié)果
被除數(shù):3
除數(shù):2
結(jié)果: 1
被除數(shù):1
除數(shù):
異常
文件操作
寫(xiě)入
fileObj = open('text1.txt', 'wb') #若文件已存在,則覆蓋;若不存在,則新建
fileObj.write('content content.\n')
fileObj.close()
讀取
fileObj = open('text1.txt', 'r+') #讀寫(xiě)模式
str = fileObj.read()
print str
fileObj.close()
os文件方法
import os
os.rename('test1.txt', 'test2.txt') #重命名
os.remove('test2.txt') #刪除文件