python基本語(yǔ)法

python版本3.6

運(yùn)行軟件spyder

# -*- coding: utf-8 -*-

"""

Created on Tue Mar? 3 11:19:18 2020

@author: Administrator

"""

print("hello world")

print("hello world"+"23")

print("")

"""

運(yùn)算

%取余 //取整? **乘方?

"""

#循環(huán)

condition = 1

while condition <5:

? ? print(condition)

? ? condition+=1

#for循環(huán)

for i in range (5):

? ? print(i)

for i in range(2,10):

? ? print(i)

print("end")

for i in range(2,10,2):

? ? print(i)

print("end")

for i in[1,2,3,4]:

? ? print(i)

print("end")

for i in(1,2,3,4):

? ? print(i)

#列表

a_list = [1,2,23,23,34,45]

print(a_list)

print(a_list[1])? ? ? ? ? ? #打印列表第一個(gè)元素

print(a_list[-2])? ? ? ? ? #從右往左數(shù)第二個(gè)

print(a_list[1:4])? ? ? ? ? #從第一個(gè)打印到第四個(gè)

print(a_list[:-2])? ? ? ? ? #從頭打印到倒數(shù)第二個(gè)

print(len(a_list))

for content in a_list:

? ? print(content)

print(a_list.index(23))? ? #打印位置

a_list.sort()? ? ? ? ? ? ? #排序

print(a_list)? ? ? ? ? ? ? #

a_list.sort(reverse=True)?

print(a_list)

#列表操作

a_list[1] = 100? ? ? ? ? ? #修改元素內(nèi)容

print(a_list)

a_list.append(200)? ? ? ? ? #在元素末尾添加一個(gè)元素

a_list.insert(3,300)? ? ? ? #在元素3位置插入元素

del a_list[2]? ? ? ? ? ? ? #刪除列表第二個(gè)元素‘

a_list.remove(1)? ? ? ? ? #列表中刪除一個(gè)具體的數(shù)

a = a_list.pop()? ? ? ? ? ? #將最后一個(gè)元素出棧

print(a)

#多維數(shù)組

b_list = [[1,2,3],

? ? ? ? ? [3,4,5],

? ? ? ? ? [7,8,9]]

print(b_list[1])? ? ? ? ? ? #打印第一行的? [3,4,5]

print(b_list[1][2])? ? ? ? #打印第一行第二列的?

#元組? 能和數(shù)組一樣查看元素 但是不能修改元素

a_tuple = (1,23,4,453,5)

b_tuple = 2,23,4,56,6,3

print(a_tuple[1])? ? ? ? ? ? #打印第一個(gè)元素

#條件語(yǔ)句 if? ? ==等于? != 不等于

a = 2

b = 3

c = 5

d = 9

if a<b:

? ? print(b)

else:

? ? print(a)

#多條件

if a==b:

? ? print("right")

elif a==c:

? ? print("right")

elif a==d:

? ? print("right")

else:

? ? print("error")

#and or? if中的使用

if a<b and a<c:

? ? print(a)

colors = ['red','blue','black','green']

for color in colors:

? if color=='black':

? ? print(color)? ? ?

? ? break? ? ? ? ? ? ? ? ? #跳出循環(huán)

? elif color=='blue':

? ? print(color)

? ? continue? ? ? ? ? ? ? #跳出單次循環(huán)

? else :

? ? print(color)

if 'red' in colors:? ? ? ? #判斷列表中是否有red若無(wú)則返回時(shí)Flase? 有True

? ? print('red')

#字典

d = {'pen':7,'apple':3,'applepen':9}? ? #key:value? 鍵/值

d2 = {1:'q',3:'s',2:'v'}

d3 = {23:'s','d':23,5:'2'}

d4 = {'a':[1,2,3],'b':[2,34,5],'c':{'aa':2,'ss':44}}

print(d4['c']['aa'])

d['pen'] = 39? ? ? ? ? ? ? #修改鍵的值

print(d)

del d['apple']? ? ? ? ? ? #刪除一個(gè)鍵值對(duì)

for key,value in d.items():? #遍歷整個(gè)鍵值對(duì)

? ? print('key',key,'\t','value',value)

for key in d.keys():? ? ? ? ? #a遍歷整個(gè)字典的鍵

? ? print('key:',key)

for value in d.values():? ? ? #遍歷整個(gè)字典的值

? ? print('value',value)

for key in sorted(d2.keys()): #將鍵排序

? ? print('key',key)

#函數(shù)?

def function():? ? ? ? ? ? ? #定義函數(shù)

? ? a = 2

? ? b = 34

? ? c = a + b

? ? print ("c",c)

function()

def function2(a,b):? ? ? ? ? #定義一個(gè)帶參數(shù)的函數(shù) a赡盘,b 為形參 (局部變量)箕母,只有在函數(shù)內(nèi)部發(fā)生作用

? ? ? ? ? ? ? ? ? ? ? ? ? ? #若函數(shù)中的局部變量和全局變量重復(fù)的話(huà) 默認(rèn)使用局部變量 若要使用則加global

? ? c = a+b

? ? print ("c",c)

function2(23,34)

def function3(a,b=35):? ? ? ? ? #設(shè)置默認(rèn)值

? ? c = a+b

? ? print ("c",c)

function3(23)?

function3(45,234)

def add(a,b):

? ? c=a+b

? ? return c

d = add(23,45)

print(d)

#模塊? 模塊內(nèi)為已經(jīng)定義好的函數(shù)

#可以在其他文件中使用import max(模塊名) 導(dǎo)入? 然后在命令中使用max.funcmax(定義的函數(shù)名)進(jìn)行操作

#或者 from max import func_max? 從該模塊中導(dǎo)入func_max中的函數(shù) 使用 直接func_max 不需模塊名

#或from max import *? ? ? ? ? ? 從該模塊中導(dǎo)入所有的函數(shù)

#import max as m? ? ? ? ? ? ? ? 重命名該模塊

import os

print(os.getcwd())

#類(lèi)

class human:? ? ? ? ? ? ? ? ? ? #定義類(lèi)

? ? def __init__(self,name='someone',age=20):? #初始化 創(chuàng)建對(duì)象時(shí)會(huì)執(zhí)行? 傳入兩個(gè)對(duì)象值? 注init必須要前面后面兩個(gè)下劃線

? ? ? ? self.name=name

? ? ? ? self.age = age

? ? ? ? print("human init")

#? ? #類(lèi)的屬性

#? ? name = 'someone'

#? ? age = 100

? ? #類(lèi)的方法

? ? def my_name(self):

? ? ? ? print("my name is :",self.name)

? ? def my_age(self):

? ? ? ? print("my age is :",self.age)

? ? def eat(self):

? ? ? ? print("eat")

? ? def think(self,a,b):

? ? ? ? print(a+b)

#person1 = human()? ? ? ? #創(chuàng)建一個(gè)person的對(duì)象?

#person1.name

#person1.name = 'zhangsan'

#print(person1.name)

#person1.think(23,25)


person2 = human('xiaoming',10)

person2 = human(name='xiaohong',age=10)

person2.my_name()

#類(lèi)的繼承

class student(human):? ? ? ? ? #子類(lèi)繼承父類(lèi)

? ? pass

stu1 = student()

stu1.my_name()

class student(human):? ? ? ? ? #子類(lèi)繼承父類(lèi)

? ? def __init__(self,grade=1,school='MIT'):

? ? ? ? super().__init__()? ? ? #父類(lèi)的初始化

? ? ? ? self.school = school

? ? ? ? self.grade = grade

? ? ? ? self.scroe = 100

? ? ? ? print("student init")


? ? ? ? #添加子類(lèi)自己的方法

? ? def learn(self):

? ? ? ? print('learning')

? ? def my_school(self):

? ? ? ? print('my school is',self.school)

? ? #子類(lèi)可以重寫(xiě)父類(lèi)方法

? ? def think(self,a,b):

? ? ? ? print(a*b)

stu2 = student(4)

stu2.my_age()

stu2.learn()

stu2.my_school()

stu2.think(3,5)

#文件讀寫(xiě)

text = 'Writing a text \n hello world'

print(text)

my_file = open('file1.txt','w')? ? ? ? ? #以寫(xiě)入方式打開(kāi)文件 如果文件不存在則會(huì)在當(dāng)前文件目錄創(chuàng)建文件 或者在指定路徑創(chuàng)建文件

my_file.write(text)

my_file.close()

with open('file2.txt','w') as f2:? ? ? ? #? 清空文件 然后寫(xiě)入? ? ? ? ? ? ? ? ? ? ? ? 使用with的話(huà)就不用使用close命令

? ? f2.write('hahaha\n123123')

with open('file2.txt','a') as f2:? ? ? ? #? 在文件最后追加內(nèi)容? ? ? ? ? ? ? ? ? ? ? ? 使用with的話(huà)就不用使用close命令

? ? f2.write(text)

with open('file2.txt','r') as f2:? ? ? ? #? 以讀取方式打開(kāi)文件? ? ? ? ? ? ? ? ? ? ? ? 使用with的話(huà)就不用使用close命令

? ? content = f2.read()? ? ? ? ? ? ? ? ? # 讀取全部?jī)?nèi)容

? ? print(content)

with open('file2.txt','r') as f2:? ? ? ? #? 以讀取方式打開(kāi)文件? ? ? ? ? ? ? ? ? ? ? ? 使用with的話(huà)就不用使用close命令

? ? content = f2.readline()? ? ? ? ? ? ? # 讀取文件第一行? ? ? 若要讀取多行用readlines 會(huì)將所有行存放到一個(gè)列表中

? ? print(content)

#將所有的行打印出來(lái)‘

filename = 'file2.txt'

with open(filename) as f:

? ? for line in f:

? ? ? ? print(line)? ? ? ? ? ? ? ? ? ? ? #若要去除換行符 用line.rstrip()

#異常處理

#file = open('hahaha','r+')? ? ? ? ? ? ? ? #先去讀一個(gè)文件 如果能打開(kāi)的話(huà)就可以寫(xiě)入顯然會(huì)出現(xiàn)錯(cuò)誤

try:

? ? file = open('hahaha','r+')

except Exception as e:

? ? print(e)

try:

? ? file = open('hahaha','r+')

except Exception as e:

? ? print(e)

? ? response = input('Do you want to creat it ')

? ? if(response=='yes'):

? ? ? ? with open('hahaha','w') as f:

? ? ? ? ? ? pass

? ? ? ? print('The file was created successfully')

? ? else:

? ? ? ? pass

else:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #如果文件沒(méi)有出錯(cuò)

? ? file.write('hahahahahahahahahah')

? ? file.close()

#數(shù)據(jù)存儲(chǔ)

import json

a_dict = {'user_id':'qdf','user_name':'assf',100:200}

with open('example.json','w')as f:

? ? json.dump(a_dict,f)

with open('example.json')as f:

? ? content = json.load(f)

? ? print(content)

#猜數(shù)字小游戲

import random

n = random.randint(1,100)? ? ? ? ? #生成一個(gè)1-100的隨機(jī)整數(shù)

step = 0? ? ? ? ? ? ? ? ? ? ? ? ? #游戲的步數(shù)

print ('Game start')

def get_number():

? ? guess = input('Please enter an integer from 1 to 100:')

? ? while True:

? ? ? ? if guess.isdigit():? ? ? ? #判斷輸入內(nèi)容是否是數(shù)字

? ? ? ? ? ? guess = int(guess)

? ? ? ? ? ? return guess

? ? ? ? else:

? ? ? ? ? ? guess = input('Please enter an integer from 1 to 100:')

guess = get_number()

low=0

high=100

while True:

? ? step+=1

? ? print('step',step)

? ? if guess ==0:? ? ? ? #退出游戲

? ? ? ? print('quit')

? ? ? ? break

? ? if guess<n:

? ? ? ? print(guess,'is low')

? ? ? ? low = guess+1

? ? elif guess>n:

? ? ? ? print(guess,'is high')

? ? ? ? high = guess+1

? ? else:

? ? ? ? print('You win!')

? ? ? ? break

? ? print('You can try ',low,'to',high)

? ? guess = get_number()

print('Game over')

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末汉操,一起剝皮案震驚了整個(gè)濱河市哈打,隨后出現(xiàn)的幾起案子携丁,更是在濱河造成了極大的恐慌可款,老刑警劉巖拣挪,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異宵晚,居然都是意外死亡垂攘,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)淤刃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)晒他,“玉大人,你說(shuō)我怎么就攤上這事逸贾∫敲ⅲ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵耕陷,是天一觀的道長(zhǎng)掂名。 經(jīng)常有香客問(wèn)我,道長(zhǎng)哟沫,這世上最難降的妖魔是什么饺蔑? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮嗜诀,結(jié)果婚禮上猾警,老公的妹妹穿的比我還像新娘。我一直安慰自己隆敢,他們只是感情好发皿,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著拂蝎,像睡著了一般穴墅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上温自,一...
    開(kāi)封第一講書(shū)人閱讀 49,985評(píng)論 1 291
  • 那天玄货,我揣著相機(jī)與錄音,去河邊找鬼悼泌。 笑死松捉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的馆里。 我是一名探鬼主播隘世,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼可柿,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了丙者?” 一聲冷哼從身側(cè)響起复斥,我...
    開(kāi)封第一講書(shū)人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蔓钟,沒(méi)想到半個(gè)月后永票,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體卵贱,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡滥沫,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了键俱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兰绣。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖编振,靈堂內(nèi)的尸體忽然破棺而出缀辩,到底是詐尸還是另有隱情,我是刑警寧澤踪央,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布臀玄,位于F島的核電站,受9級(jí)特大地震影響畅蹂,放射性物質(zhì)發(fā)生泄漏健无。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一液斜、第九天 我趴在偏房一處隱蔽的房頂上張望累贤。 院中可真熱鬧,春花似錦少漆、人聲如沸臼膏。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)渗磅。三九已至,卻和暖如春检访,著一層夾襖步出監(jiān)牢的瞬間夺溢,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工烛谊, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留风响,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓丹禀,卻偏偏與公主長(zhǎng)得像状勤,于是被迫代替她去往敵國(guó)和親鞋怀。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容