簡單的python練習題(1-10)


#1.python程序中__name__的作用是什么?

__name__這個系統變量用來表示程序的運行方式.
如果程序在當前模塊運行,__name__的名稱就是__main__,
如果不在當前模塊(被調用),則顯示為調用模塊的名稱.

擴展:常常這樣寫if __name__ == "__main__":來表名這是整個工程開始運行的入口.
    效果:如果直接從這個文件執行,if為Turn,可以運行if后面的程序
    如果被調用,if為False,不執行if后面的程序

#2.表達式int('11111',2)的值是多少?

涉及int()函數的用法,第一個參數代表字符串或數字,第二個參數代表進制數
很顯然:2進制 int('11111',2)=1+2+4+8+16=31

#3.簡單解釋python基於值的內存管理模式

不同的變量賦予相同的值,該值在內存中只有一份,多個變量指向同一個內存地址
對於沒有任何變量指向的值,python將自動刪除

#4.python 3.x語句print(1,2,3,sep=':')的輸出結果是?

涉及print()函數的用法,
第一個參數,要打印的值;
第二個參數sep表示要打印多個值時,各值的分割方式(默認空格);
第三個參數end表示結尾的方式(默認\n)

#5.編寫程序,生成包含1000個0-100之間的隨機整數,並統計每個元素出現的次數

import random

s = []
for i in range(1000):
    #隨機整數
    x = random.randint(0,100)
    s.append(x)
#字典不會重復
d = {}
for v in s:
    d[v] = s.count(v)
for i in range(101):
    print(i,':',d[i])

#6.以a列表的值為鍵,以b列表的值為值,構建字典c,最簡單的寫法是?

c = dict(zip(a,b))

#7.分析邏輯運算符"or"的短路求值特性

假設存在"表達式1 or 表達式2",如果表達式1為Ture就不再計算表達式2,無論表達式2為什么,整體都為Ture

#8.編寫程序,運行后用戶輸入4位整數作為年份,判斷其是否為閏年(能被400整除或能被4整除但不能被100整除的稱為閏年)

x = input("請輸入一個4位數作為年份:")
#eval接收字符串,返回表達式結果

x = eval(x)
if x%400==0 or (x%4==0 and not x%100==0):
    print("%d是閏年"%x)
else:
    print("%d不是閏年" % x)

#9.編寫程序,生成一個包含50個整數的隨機列表,然后刪除其中所有的奇數

import random
x = []
for i in range(50):
    n = random.randint(0,100)
    x.append(n)
#必須倒着刪,假如正着來,到最后就沒有那么大的索引了,會彈出越界的錯誤
for i in range(len(x))[::-1]:
    print(i)
    if x[i] % 2 == 1:
        del x[i]
print(x)

#10.編寫程序,生成一個包含20個隨機整數的列表,然后對其中偶數下標進行降序排列,奇數下標元素不變

import random
x = []
x_even = []
for i in range(20):
    n = random.randint(0,100)
    x.append(n)
    if i%2==0:
        x_even.append(n)
#sort()正序排列,sort(reverse=Ture)倒敘排列
x_even.sort(reverse=True)
for i in range(len(x_even)):
    if i%2==0:
        x[i] = x_even[i]
print(x)

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM