python的環境安裝
首先安裝python的環境,因為任何的編譯器都需要一個完整的編譯環境去支持這個編譯器的正常使用,所以這一步一定要進行的相當仔細,切記切記。
python中判斷
- if else
if else 判斷的格式如下
if 要判斷的條件:
滿足條件時要執行的事情
else:
不滿足條件時要執行的事情
下面給出if else判斷的案例
#判斷一個人年齡
age = input('請輸入您的年齡')
# 數據類型轉換
age = int(age)
print(type(age))
if age >= 18:
print('恭喜您成年了,可以去網吧了')
else:
print('對不起,你還是個寶寶')
可見,在python中if else的結構與c相同,但是語法格式,不同,在各位運用的時候一定不要混淆。
- elif
elif與c語言中switch的用法十分相似,在python中用elif 代替 switch。
下面給出elif的使用格式:
if xxx1:
執行xxx1
elif xxx2:
執行xxx2
elif xxx3:
執行xxx3
else:
以上都不滿足要執行的事情
下面給出elif的案例:
#判斷成績為哪種等級
score = input('請輸入成績:')
print(type(score))
score = int(score)
if score >=90 and score <= 100:
print('考試等級為優秀')
elif score < 90 and score >= 80:
print('考試等級為良好')
elif score < 80 and score >=70:
print('考試等級為中等')
elif score < 70 and score >= 60:
print('考試等級為及格')
else:
print('等待補考吧')
切記,elif必須與if共同使用
python中循環
- while循環
while循環的格式如下
while 循環條件:
循環體
while True:
循環體
while True循環是無限循環,while循環的簡單案例如下:
i = 0
while i < 5:
print(i)
i += 1
在python中不可以用i++這類的語法,在python要表示i++可以用最原始的表示方法i = i + 1或者是i += 1。(運算符號后加空格是作者自身的編程習慣)
- for
for循環的格式如下
for 臨時變量 in 可迭代對象(比如字符串,列表,元組等):
循環體
不同于c和java中for循環的結構和語法,在python中for循環的格式與之相比有了非常大的變化。
下面給出for循環的簡單案例:
#打印九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print(j, 'X', i, '=', i*j,' ', end='')
print(end='\n')
在這里有必要說一下range函數的用法。range函數的格式為
range(起始值, 終止值, 步長)
range函數的取值區間為左閉右開。
for循環在python中應用特別廣泛,這一部分要認真學習。
- 跳出循環的方式 ,break 和continue
break 跳出本層循環
continue 跳出本次循環,繼續執行下一次循環
猜數字案例
生成隨機數
from random import randint
用上一段代碼來生成一段一定范圍內的隨機數
# 猜數字游戲
from random import randint
# 玩家在控制臺中輸入要猜數字的范圍 eg:[100, 200]
min_num = int(input('請您輸入要猜數字的最小值:'))
max_num = int(input('請您輸入要猜數字的最大值:'))
# 生成猜數字的范圍
computer_num = randint(min_num, max_num)
# 接下來玩家輸入要猜的數字
# 要明確告訴玩家猜大了還是猜小了
# 如果猜對了告訴玩家: 一次猜中:這是高手,
# 2~5猜中,你也太厲害了 i次就猜中了
# 5 次以上 ,洗洗睡吧, i次才猜對
count = 1
while True :
guess_num = int(input('請輸入你的答案:'))
if guess_num < computer_num:
print('小了')
count += 1
elif guess_num >computer_num:
print('大了')
count += 1
else:
if count == 1:
print('這是高手,一次就中')
elif count>=2 and count<=5:
print('你也太厲害了,%d次就猜中了'%count)
elif count > 5:
print('洗洗睡吧,兄弟,%d次才猜中啊'%count)
break
print('game over')
print('謝謝您的光顧')
在此程序代碼中print('洗洗睡吧,兄弟,%d次才猜中啊'%count)可以有另外的表示方法例如
print('洗洗睡吧,兄弟',count,'次才猜中啊')
print('洗洗睡吧,兄弟',format(count),'次才猜中啊')
這兩種表示方法都是可行的。
python中常用數據類型
- 列表list
列表 list 和 c中的數組很像 與數組不同的是可以存儲不同類型的數據(靈活)
創建列表 []
hero_name = ['魯班七號', '狄仁杰', '安琪拉', 1000]
print(hero_name)
#遍歷列表
for hero in hero_name:
print(hero)
列表的常見操作
1、訪問
格式為:
hero_name[索引值]
print(hero_name[2])
案例如下
x = ['1000']
print(x[0])
2、 修改
hero_name[3] = '后羿'
print('修改后的列表',hero_name)
3、增加
append在列表的末尾增加這個元素
hero_name.append('黃忠')
print('增加后的列表',hero_name)
4、刪除 del
格式為:
del 列表名[索引值]
del hero_name[0]
print('刪除后的列表',hero_name)
5、列表推導式(明天)
# 生成 1 , 2, 3、、、20 的列表
li = []
for x in range(1, 21):
li.append(x)
print(li)
- 字符串string
定義 "" 和 '' 都可以定義字符串,沒區別。但是,在一個語句之中要用一個引號去包含另一個引號的話,需要用單雙引號進行區分,防止出現程序錯誤,程序正常運行。
#如何把列表變成字符串
name = ['z', 'h', 'a', 'o', 's', 'i'] # zhaosi
# join 方法可以將列表變成字符串
str_name = ''.join(name)
str_name = '_'.join(name)
str_name = '/'.join(name)
str_name = '\\'.join(name)
print(str_name)
上述代碼中分別可以用這四種符號來隔開字符串,任選其一即可。
1、去空格操作
name2 = ' neusoft '
print(len(name2)) # len 判斷變量中元素個數
name2 = name2.strip()
print('去空格之后的長度', len(name2)) # len 判斷變量中元素個數
去空格操作只能去掉字符串前方和后方的空格,中間的空格不能去掉。
2、替換 replace
price = '$998'
price = price.replace('$', '¥')
print(price)
price = int(price)
print(price)
此程序會將$轉變為¥
- 數字number
數字就很簡單了,int類型與c語言差別不大。 - 元組tuple
創建元組與列表很相似,但是元組不支持修改
a = ('zhangsan','lisi', 1000)
1、訪問
a = ('zhangsan','lisi', 1000)
a[1]
2、查看類型
a[1] = 1900
print(type(a))
3、只有一個元素的元組如何表示
b = (1000, )
print(type(b))
- 字典dict
以鍵值對形式存儲的數據結構 key value
1、創建字典
info = {'name':'劉強東', 'age': 45, 'addr':'北京市區朝陽區','sex': '男性' }
print(type(info))
print(info)
print(len(info))
2、訪問字典中的元素 通過鍵訪問
print(info['name'])
# print(info['sex'])
# 當字典中不存在sex這個鍵的時候我們可以為他設置默認值
sex = info.get('sex', 'female')
print(sex)
3、修改
info['age'] = 55
print('修改后字典的值', info)
4、增加
如果鍵不存在就是增加操作
info['sex'] = 'female'
print('增加后字典的值', info)
5、刪除
del info['addr']
print('刪除后字典的值', info)
6、字典常用方法
# 獲取字典中所有的鍵
print(info.keys())
# 獲取字典中所有的值
print(info.values())
# 獲取所有的鍵 --值
print(info.items())
- 集合set
集合{}
#無序,里面的元素不重復
set1 = {111, 6666}
print(set1)
print(type(set1))
for x in set1:
print(x)
中文分詞
借助中文分詞工具進行分詞
- jieba 結巴
安裝python第3方工具包
pip install 包名
pip isstall jieba
在用戶目錄下新建 pip文件夾
新建pip.ini 文件
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
導入jieba庫
import jieba
txt = '我來到北京清華大學'
# 精確分詞模式(常用) nlp自然語言處理
seg_list = jieba.lcut(txt)
print(seg_list)
# 搜索引擎模式, 先執行精確模式, 然后再對長詞進行分析
seg_list2 = jieba.lcut_for_search(txt)
print(seg_list2)