Создайте объект счетчика, а затем обновите его наборами для каждого слова:
from collections import Counter
wordlist = ["tree","bone","indigo","developer"]
c = Counter()
for word in wordlist:
c.update(set(word.lower()))
print(c)
Вывод:
Counter({'e': 3, 'o': 3, 'r': 2, 'n': 2, 'd': 2, 't': 1, 'b': 1, 'i': 1, 'g': 1, 'v': 1, 'p': 1, 'l': 1})
Обратите внимание, что хотя букв, которых не было в wordlist
отсутствуют в Counter
, это нормально, потому что Counter
ведет себя как defaultdict(int)
, поэтому при доступе к отсутствующему значению автоматически возвращается значение по умолчанию, равное 0.
Request.ServerVariables["LOCAL_ADDR"];
Из docs :
Возвращает адрес сервера на котором поступил запрос. Это важно на компьютерах, где к компьютеру может быть привязано несколько IP-адресов, и вы хотите узнать, какой адрес использовался в запросе.
Это отличается от удаленных адресов, которые относятся к клиентский компьютер.
Этот метод возвращает публичный IP-адрес вашего компьютера при запуске этого кода на вашем ПК, а при развертывании приложения на сервере - IP-адрес сервера.
public static string Getpublicip()
{
try
{
string externalIP = "";
var request = (HttpWebRequest)WebRequest.Create("http://icanhazip.com.ipaddress.com/");
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
externalIP = new WebClient().DownloadString("http://icanhazip.com");
return externalIP;
}
catch (Exception e)
{
return "null";
}
}
При поиске в сети я обнаружил следующий код: (Я не смог найти там однострочного метода)
string myHost = System.Net.Dns.GetHostName();
// Show the hostname
MessageBox.Show(myHost);
// Get the IP from the host name
string myIP = System.Net.Dns.GetHostEntry(myHost).AddressList[index].ToString();
// Show the IP
MessageBox.Show(myIP);
-> где index - это индекс вашего IP-адреса. адрес хоста (например, сетевое соединение).
Код от: http://www.geekpedia.com/tutorial149_Get-the-IP-address-in-a-Windows-application.html
Как сообщали другие, System.Net.Dns.GetHostEntry
- это то, что нужно. При доступе к свойству AddressList
необходимо учитывать свойство AddressFamily
, поскольку оно может возвращать результаты как для IPv4, так и для IPv6.